Ingredients
Equipment
Method
- Melt butter with olive oil in a large 7-quart Dutch oven over medium heat. Add sliced onions with 1/8 teaspoon each of salt and pepper. Cook for 30-35 minutes, stirring every 5-7 minutes, until onions are deeply caramelized to a mahogany brown color. If onions start to stick or scorch, reduce heat and add more butter.
- Once onions are caramelized and smell sweet and jammy, add minced garlic, red pepper flakes, soy sauce, and Worcestershire sauce. Cook for 30 seconds while stirring constantly until fragrant.
- Pour in water and half of the evaporated milk. In a small bowl, whisk remaining evaporated milk with cornstarch until completely smooth with no lumps, then add to pot. This prevents the evaporated milk from curdling. Increase heat to high and stir in beef bouillon, parsley, thyme, oregano, paprika, and pepper. Bring to a rolling boil.
- Add pasta to boiling liquid and reduce heat to maintain steady simmer over medium-high heat. Cook uncovered for 20-25 minutes, stirring every 3-4 minutes and pushing pasta down into liquid. Cook until pasta is al dente (tender with slight bite) and about 1/2 cup liquid remains. If liquid evaporates before pasta is done, add water 1/2 cup at a time.
- Remove pot from heat. Add Gruyere cheese in small handfuls, stirring until each addition melts completely before adding more. This prevents clumping. Follow with Parmesan cheese, stirring until sauce is smooth and creamy. Taste and adjust seasoning. If too thick, stir in splash of water or milk. Garnish with fresh parsley if desired.
Notes
Storage: Refrigerate in airtight container for up to 5 days. Flavors improve on day two. Reheating: Microwave with splash of milk, or reheat gently on stovetop. Make ahead: Slice onions up to 2 days ahead, or caramelize onions and prepare sauce base (minus pasta and cheese) and refrigerate. Yellow onions are essential, do not substitute. Use freshly shredded Gruyere and Parmesan for best melting. Aged Gruyere has more complex flavor. Cornstarch slurry prevents milk from curdling.
