Cook the pasta: Bring a large pot of generously salted water to a boil over high heat. Cook the pasta according to package directions until al dente. Drain and set aside.
While the pasta cooks, make the cheese sauce: In another large oven-safe skillet or braiser, melt the butter over medium heat, then whisk in the flour, cooking and whisking constantly until a paste forms, about 30 seconds. Slowly stream in the milk, constantly whisking away any lumps, until smooth and combined. Bring to a simmer, stirring occasionally, until the sauce thickens, 3 to 5 minutes. Once the sauce has thickened a bit, reduce the heat to low and stir in the salt, garlic powder, onion powder, lots of pepper (don’t be shy!). Fold in the cheddar and gruyere cheeses and stir until completely melted. Taste and add more salt and pepper, if necessary.
Stir in the pasta and serve: Add the pasta to the cheese sauce and stir gently to combine. If you want it a little creamier, you can stir in an extra splash or two of milk until it is nice and saucy! The pasta will really soak up the cheese sauce.
Serve: Enjoy the mac and cheese straight out of the pan, OR you can top the mac and cheese with an extra 2 ounces of shredded cheddar cheese and 2 ounces of gruyere and place under the broiler in your oven for 1 to 2 minutes or until the cheese is bubbly and slightly golden. Serves 4 as a main, 6 as a side.
