Bring 2 quarts water to boil over high heat. Add macaroni and 1/2 tablespoon salt; cook until pasta is tender. Drain pasta and set aside in colander.
In Dutch oven, heat butter over medium-high heat until foaming. Add flour, mustard, and cayenne (if using) and whisk well to combine. Continue whisking until mixture becomes fragrant and deepens in color, about 1 minute.
Gradually whisk in milk; bring mixture to boil, whisking constantly (mixture must reach full boil to fully thicken). Reduce heat to medium and simmer, whisking occasionally, until thickened to consistency of heavy cream, about 5 minutes.
Off heat, whisk in cheeses and 1 teaspoon salt until cheeses are fully melted. Add pasta and cook over medium-low heat, stirring constantly, until mixture is steaming and heated through, about 6 minutes.
Transfer mixture to broiler-safe 2.5 liter -by 13 baking dish and broil until crumbs are deep golden brown, 3 to 5 minutes, rotating pan if necessary for even browning. Cool about 5 minutes, and then serve.
Calories From Fat
% Daily Value*
Total Fat 0g
Saturated Fat 0g
Trans Fat 0g
Dietary Fibers 0g
* Percent Daily Values are based on a 2,000 calorie diet.
* Nutrition information is estimated based on the ingredients and cooking instructions as described in each recipe and is intended to be used for informational purposes only. Please note that nutrition details may vary based on methods of preparation, origin and freshness of ingredients used.