Preheat the oven to 400 degrees F. Grease a 9x13 inch casserole dish.
Spread the potatoes in the dish and pour the melted butter evenly over the top.
Bake at 400 for 25 minutes, or until the potatoes are getting brown on the edges.
Remove from the oven and set aside to cool while you assemble everything else. Lower the oven temperature to 350.
While the potatoes bake, cook the bacon in a frying pan until crispy. Remove to a paper-towel lined plate. Drain all but 1 teaspoon of the bacon grease.
Snap off the woody ends of the asparagus, discard, and chop the rest into bite-size pieces. Add the chopped asparagus to the bacon grease. Cook and stir for about 5 minutes, until the asparagus is fork tender. Don't let it get mushy.
While the asparagus cooks, chop the tomatoes and green onions.
Layer the asparagus, tomatoes, green onions, and crumbled bacon on top of the potatoes.
Layer on the crumbled goat cheese.
In a mixing bowl, whisk together the eggs, half and half, salt, seasoned salt, pepper. Whisk for at least 1 minute.
Pour the egg mixture evenly over the dish. Sprinkle with 2 cups of cheddar cheese. At this point, you can cover the casserole tightly and refrigerate for up to 24 hours.
Bake at 350 for about 40-45 minutes, or until the cheese starts getting brown on top.