8 tablespoons (1 stick) unsalted butter, plus more for casserole
6 slices white bread, crusts removed, torn into ¼ – ½ inch pieces
5 ½ cups milk
½ cup all-purpose flour
2 teaspoons kosher salt, plus more for water
¼ teaspoon ground nutmeg
¼ teaspoon freshly grated black pepper
¼ teaspoon cayenne pepper
4 ½ cups (about 18 ounces) grated sharp white cheddar cheese
2 cups (about 8 ounces) grated Gruyere or 1 ¼ cups (about 5 ounces) grated Pecorino Romano cheese
1 lb of elbow macaroni
Preheat oven to 375 degree F. Butter a 3 quart casserole dish and set aside. Place the bread in a medium bowl. In a saucepan over medium heat, melt 2 tablespoons butter. Pour the melted butter into the bowl with the bread and toss. Set the breadcrumbs aside.
Warm the milk in a medium saucepan over medium heat. Melt the remaining 6 tablespoons butter in a high-sided skillet over medium heat. When the butter is melted, add the flour and stir for about 1-2 minutes. This is called a roux. While whisking, slowly pour the hot milk into the roux a little at a time, continually whisking to make sure the mixture remains smooth. Cook for about 8-12 minutes until the mixture is thick and creamy. Remove the pan from the heat and stir in salt, nutmeg, black pepper, cayenne pepper, 3 cups of cheddar cheese and 1 ½ cups Gruyere (or 1 cup Pecorino Romano); set the cheese sauce aside.
Cover a large pot of salted water and bring to a boil. Cook the macaroni until just tender. Transfer to a colander and rinse under cold running water and then drain well. Stir macaroni into the reserved cheese sauce. Pour the mixture into the prepared casserole dish and sprinkle the remaining cheeses and breadcrumbs over the top. Bake until golden brown, about 30 minutes. Remove from oven and cool for about 5 minutes before serving.
Adapted From: The Martha Stewart Living Cookbook: The Original Classics