Ingredients
Equipment
Method
- Preheat oven to 375°F (190°C). Butter a large baking dish or have an oven-safe skillet ready.
- Heat olive oil and 1 tablespoon butter in a large skillet over medium heat. Add sliced onions and cook, stirring often, for 25-30 minutes until deeply caramelized and golden brown. Stir in garlic and thyme, cooking 1 minute more.
- Add remaining 2 tablespoons butter to the caramelized onions. Once melted, stir in flour and cook for 2 minutes, stirring constantly to form a roux.
- Slowly whisk in vegetable broth until smooth, then add milk and cream. Bring to a gentle simmer and cook for 5 minutes until thickened. Remove from heat and stir in Gruyère, cheddar, and mozzarella until melted. Season with salt and pepper.
- Cook pasta in salted boiling water until just al dente (1-2 minutes less than package directions). Drain well. Add pasta to cheese sauce and fold gently to coat. Transfer to prepared baking dish if not using oven-safe skillet.
- Mix breadcrumbs with Parmesan and sprinkle evenly over the top. Bake for 20-25 minutes until bubbling and golden brown. Let rest 5 minutes before serving.
Notes
Patience with caramelizing the onions is key - don't rush this step. Cook pasta slightly underdone as it continues cooking in the oven. For best melting, shred cheese from a block rather than using pre-shredded. Can be assembled a day ahead; add topping right before baking. Freezes well unbaked for up to 3 months.
