Preheat oven to 375F. In a large, ovenproof, nonstick skillet, cook bacon over medium heat until just crisp, about 10 minutes. With a slotted spoon, transfer bacon to paper towels in order to drain, leaving fat in skillet. In a bowl, whisk eggs, milk, salt and pepper; set aside.
In rendered bacon fat, cook onion over medium heat, stirring occasionally until soft and translucent, about 4 minutes.
Add mushrooms and cook until wilted, about 5 minutes.
Add garlic and cook for 1 minute. Stir in reserved bacon and thyme.
Add egg mixture and stir gently and evenly to distribute filling. Cook for 1 minute on top of stove.
Top eggs with cheese, then bake frittata in oven until just set in center, 8 to 10 minutes.