01 - Preheat oven to 350°F if baking with topping.
02 - Cook elbow macaroni according to package directions until al dente. Drain and set aside.
03 - In a saucepan, melt butter over medium heat. Whisk in flour and cook for 1 minute, stirring constantly to form a smooth roux.
04 - Gradually whisk in the whole milk. Simmer, whisking constantly, until the sauce thickens, about 4–5 minutes.
05 - Lower the heat. Stir in both cheddar cheeses and Dijon mustard until smooth and fully melted. Season with salt and pepper to taste.
06 - Add cooked macaroni to the cheese sauce and stir until evenly coated.
07 - For a baked version, transfer the mixture into a greased baking dish. Combine breadcrumbs, melted butter, and Parmesan cheese. Sprinkle evenly over the top and bake for 15–20 minutes until golden and bubbly.
08 - Serve hot and enjoy.