Classic mac and cheese made with a simple stovetop cheese sauce and a quick bake for a golden, crisp top and creamy center—an easy, kid-friendly summer cookout side.
Boil the pasta: Bring a large pot of well-salted water to a boil. Add the elbow macaroni and cook until just shy of al dente (about 1–2 minutes less than package directions). Drain in a colander and let sit while you make the sauce; do not rinse.
Prep your baking dish and oven: Heat the oven to 190°C / 375°F. Lightly butter a small baking dish, about 20 cm (8 inches) square or similar.
Make the roux: In the same pot used for the pasta, melt the butter over medium heat. Sprinkle in the flour and whisk continuously for 1–2 minutes until smooth and foamy and the flour smells slightly nutty.
Add the milk gradually: Slowly whisk in about 1/4 of the milk. When smooth and thickened, add another 1/4. Continue until all milk is added, then simmer and whisk 4–6 minutes until the sauce gently bubbles and thickens enough to coat the back of a spoon.
Season the sauce: Reduce heat to low and whisk in salt, pepper, Dijon mustard (if using), and paprika (if using). Taste and adjust seasoning.
Melt in the cheeses: On low heat, add most of the grated cheddar and the Parmesan a handful at a time, stirring until each addition melts smooth before adding more, until the sauce is thick and glossy.
Combine pasta and cheese sauce: Add drained macaroni and fold until evenly coated. If the mixture looks stiff, add 1–2 tablespoons extra milk to loosen (it will thicken in the oven).
Transfer to the baking dish: Scrape into the prepared dish and smooth the top lightly without packing it down.
Make the breadcrumb topping: In a small bowl, mix breadcrumbs with melted butter until evenly moistened. Sprinkle over the mac and cheese and top with the reserved handful of cheddar.
Bake until golden and bubbling: Bake on the middle rack for 18–22 minutes, until the edges bubble and the top is deep golden. If needed, bake a few minutes more or broil 1–2 minutes, watching closely.
Rest, then serve: Let rest 5–10 minutes before serving so the sauce thickens slightly and portions hold together.