This macaroni and cheese is absolutely delicious and can be made up to 2 months ahead. Cheesy and creamy with a crunchy breaded topping.
In a food processor, pulse bread pieces, Parmesan cheese, 2 tablespoons melted butter, and garlic until coarsely ground, about 5 pulses. If not using immediately, place in freezer bag and freeze for up to 2 months
In a large pot, bring 4 quarts water to a boil. Add 1/2 tablespoon salt and macaroni. Cook for only 4 minutes, until barely softened. Drain and spread out on large baking sheet to cool while cheese sauce is made.
Using the same empty pot, cook butter, flour, mustard, and cayenne over medium heat until golden, about 2 minutes stirring constantly. Whisk in broth and heavy cream and bring to a boil. Reduce heat to medium-low and simmer for 10 minutes or until thickened slightly. Remove from heat and add all shredded cheese, 1 teaspoon salt, and 1/2 teaspoon black pepper. Stir until smooth.
Add macaroni to cheese sauce and stir gently to combine. Place in 13 X 9 inch baking dish. Let cool at room temperature for 1-2 hours if making ahead and storing.
If freezing, cover with plastic plastic and then with foil tightly. Freeze up to 2 months. If refrigerating, cover with foil and store for up to 3 days.
When ready to cook, remove from freezer/refrigerator. Place oven rack in middle position and heat oven to 375 degrees.
(Skip this step if you did not freeze macaroni & cheese) If frozen, remove foil (save for later) and plastic wrap and microwave for 10 minutes or until bubbling around edges (this will reduce oven cooking time). If not microwaving frozen macaroni prior to baking, increase oven cooking time by about 15-20 minutes).
Replace foil and bake for 25 minutes. Remove foil, add bread crumb mixture and continue baking for 20 minutes more or until macaroni is well heated in the center and topping is golden brown.
Let sit for 10 minutes before serving.
If making only 2-3 days ahead, cover with foil and place macaroni and topping (stored separately) in refrigerator until ready to cook. Cook as described above.