Preheat oven to 350 degrees and spray a 9 or 10 inch baking dish with cooking spray. It can be round or square.
In a medium skillet, cook the bacon until crispy. With a slotted spoon remove from pan and drain bacon on paper towels. Drain bacon drippings leaving about 1 tablespoon of drippings in the pan.
Cook asparagus in reserved bacon drippings for a couple of minutes or until desired tenderness (asparagus will continue to cook in the oven). Add the garlic and cook for an additional minute. Remove from heat and set aside.
In a large bowl, add the eggs, 1/2 the bacon, 1/2 the cheddar cheese, cream, parsley, 1/2 the green onions, asparagus, salt, and pepper to preference. Whisk together and pour into prepared pan.
Bake for 15-20 minutes or until egg is puffed and set in the middle. If you are using a 9-inch pan it will puff very high but will settle as it cools. Add the remaining cheese for the last couple of minutes of baking to melt. Remove from oven and sprinkle with remaining bacon and green onions. Serve!