Melt 3 tablespoons butter in a wide skillet over low to medium-low heat (depending on strength of stovetop). Add onions, garlic, thyme sprigs, bouillon powder, and a small pinch of salt. Cook, stirring occasionally, until onions are golden brown and caramelized, about 35 minutes. Remove from heat, discard thyme sprigs, and set aside. Once slightly cooled, stir through Worcestershire sauce.
In a large nonstick pot, melt 4 tablespoons butter over medium heat. Whisk in flour and cook for 1 minute until smooth. Whisk in garlic powder, onion powder, salt, and pepper. Gradually add milk, whisking constantly until slightly thickened (1–2 minutes). Slowly add chicken broth while whisking, then bring to a gentle boil.
Once boiling, add uncooked macaroni. Stir with a wooden spoon. Reduce heat to medium-low, allowing a gentle bubble across top when not stirring. Stir often, scraping the bottom of the pot, 7–11 minutes, until pasta is just cooked (but still a bit firm) and sauce slightly thickens. If it looks too saucy, don’t worry—it will thicken with cheese. See note 3 for troubleshooting.
Remove from heat and add cheese a handful at a time, letting each melt before adding the next. Adjust seasoning to taste. Gently stir in the caramelized onions--or spoon them over individual servings. Serve immediately and enjoy!
Notes
Note 1: Gruyere is pricey, but truly the secret to this pasta’s amazing flavor. You can swap in extra-sharp Cheddar, but it won’t have the same French onion flavor. Gently pack the shredded cheese in the measuring cup for an accurate amount.Note 2: Use a block of Parmesan and grate it on the small holes of a box grater. Gently pack it in the measuring cup for accuracy.Note 3 (Troubleshooting): Remove from heat as soon as the pasta is al dente—firm but not hard. It will continue cooking and absorbing liquid as you add the cheese. It’s better to slightly undercook than overcook, since mushy pasta can’t be fixed. If the sauce is too thick, add a splash of milk. If it’s too thin or the pasta isn’t done, simmer on low for another minute or two.Storage: Best enjoyed right off the stovetop. The sauce thickens as it sits and the pasta continues to absorb the liquid.