Cook bacon in a large frying pan over medium heat until golden and crispy on both sides.
Remove to a plate lined with a paper towel. Remove most of the grease from the frying pan.
Add olive oil to the pan. Once hot, add the chopped broccoli, onions, and garlic. Season with a little salt and pepper and cook for a few minutes, tossing occasionally, until broccoli is slightly tender.
Chop bacon and add it to the pan. Remove pan from heat.
Preheat oven to 350 degrees F. Prepare your pie pan with your unbaked pie crust. Prebake your pie crust for 8 minutes.
While your pie crust bakes, prepare the egg filling. Add eggs, whole milk and parmesan cheese to a mixing bowl and whisk well to combine. Season with a little salt and pepper.
Once your pie crust is prebaked, layer most of the shredded cheddar and mozzarella cheese into the bottom of the warm pie crust. (Reserve about 1/4 cup of cheese for sprinkling on top of the quiche).
Sprinkle the broccoli, onion and bacon mixture over the cheese and spread into an even layer.
Pour the egg mixture on top. Sprinkle with remaining 1/4 cup of shredded cheese.
Bake at 350 degrees for 45 minutes - 1 hour, depending on your oven. (Mine took about 47 minutes). If you notice the pie crust is browning too much you can place a piece of tinfoil over it while cooking. (I don't usually need to do this).
Remove from oven and allow to cool for 5-10 minutes before slicing. Store leftovers, covered, in the fridge.
!*I recommend using fresh broccoli, but if you want to use frozen just make sure you defrost it first and try to get rid of as much liquid as possible so that your quiche isn't soggy.Make ahead and freezing instructions are listed above in the post!