01 - Preheat the oven to 400°F. Grease a medium baking dish with butter and set aside.
02 - Bring a large pot of salted water to a rolling boil. Add the macaroni and cook according to package directions until al dente. Drain through a colander and set aside.
03 - In a saucepan over medium heat, melt 2 tablespoons of butter. Sprinkle in the flour and whisk continuously for 1 to 2 minutes until a smooth roux forms and turns lightly golden.
04 - Gradually pour in the milk while whisking constantly to prevent lumps from forming. Continue cooking and stirring for 3 to 5 minutes until the sauce thickens enough to coat the back of a spoon.
05 - Remove the saucepan from heat. Add the grated cheddar, Gruyère, and Dijon mustard, stirring until the cheeses are completely melted and the sauce is smooth. Season with salt and pepper to taste.
06 - Add the drained macaroni to the cheese sauce and stir until every piece is evenly coated. Transfer the mixture to the prepared baking dish, spreading it into an even layer.
07 - In a small bowl, combine the breadcrumbs, remaining grated cheddar, and melted butter if using. Mix until the breadcrumbs are evenly moistened. Sprinkle the mixture uniformly over the macaroni.
08 - Bake for 15 to 20 minutes until the topping is golden brown and the edges are bubbling.
09 - Remove from the oven and let stand for 5 minutes to allow the sauce to set before serving.