Mac and Cheese
This post may contain affiliate links. Read my full disclosure policy. Ultra-creamy with a blend of three cheeses and topped with golden, crispy panko, this homemade mac and cheese is second to none. Great homemade mac and cheese starts with al dente noodles—the kind with lots of crevices, like elbow macaroni or cavatappi—and a rich sauce made from butter, flour, milk, and heaps of good-quality shredded cheese. The noodles are tossed with the cheesy sauce, spread in a baking dish, topped with crispy breadcrumbs, and baked until bubbling and golden. Since many homemade mac and cheese recipes tend to be a bit dry, I developed this version to be ultra-creamy. The crispy panko and herb topping, inspired by a “fancy” mac and cheese I enjoyed at a restaurant, truly makes the dish! “I took it to a dinner party last night and it was an absolute hit with all of the adults and children. Gone in minutes and I doubled the recipe!” What You’ll Need To Make Homemade Mac and Cheese Macaroni, cavatappi, or penne pasta: Elbow macaroni is traditional, but any pasta with lots of nooks and crannies to hold the creamy cheese sauce will work beautifully. Unsalted butter: Creates the base of the roux and adds richness to the sauce; also used to grease the pan. All-purpose flour: Thickens the sauce to give it that perfect creamy texture. Whole milk: The liquid base of the cheese sauce, adding creaminess and richness. Gruyère, extra-sharp Cheddar, and Parmigiano-Reggiano: A combination of these three cheeses adds depth and dimension. Gruyère brings a nutty flavor, Cheddar adds sharpness, and Parmigiano-Reggiano contributes a salty, umami kick. Nutmeg: Adds a subtle warmth and enhances the overall flavor of the cheese sauce. Panko bread crumbs: Gives the topping a nice crunch and golden brown finish. Herbes de Provence or dried thyme: Adds depth of flavor and an herbal note that complements the rich cheese sauce. Jump to the printable recipe for precise measurements Macaroni, cavatappi, or penne pasta: Elbow macaroni is traditional, but any pasta with lots of nooks and crannies to hold the creamy cheese sauce will work beautifully. Unsalted butter: Creates the base of the roux and adds richness to the sauce; also used to grease the pan. All-purpose flour: Thickens the sauce to give it that perfect creamy texture. Whole milk: The liquid base of the cheese sauce, adding creaminess and richness. Gruyère, extra-sharp Cheddar, and Parmigiano-Reggiano: A combination of these three cheeses adds depth and dimension. Gruyère brings a nutty flavor, Cheddar adds sharpness, and Parmigiano-Reggiano contributes a salty, umami kick. Nutmeg: Adds a subtle warmth and enhances the overall flavor of the cheese sauce. Panko bread crumbs: Gives the topping a nice crunch and golden brown finish. Herbes de Provence or dried thyme: Adds depth of flavor and an herbal note that complements the rich cheese sauce. Jump to the printable recipe for precise measurements Step-by-Step Instructions Step 1: Boil the Noodles Bring a large pot of salted water to a boil. Add the pasta and cook until al dente, or just slightly underdone. (It will continue to cook in the oven so you don’t want it fully cooked.) Drain well and rinse with cold water. Step 2: Make the Cheese Sauce Meanwhile, melt 3 tablespoons of the butter in a medium (2-quart) pot over low heat and add the flour. Stir with a whisk until the flour is combined. This mixture is called a roux. Continue cooking, whisking constantly, for 2 minutes. The roux will look foamy. While whisking constantly, pour in the milk. Bring to a boil, then reduce the heat to low and cook for a few minutes more, until thickened and smooth. This French “mother sauce” is known as béchamel, or a sauce made from a white roux and milk. Off the heat, add the Gruyere, Cheddar, 1/4 cup Parmigiano-Reggiano, salt, pepper, and nutmeg. Whisk until the cheese is completely melted; if necessary, place the pan back over low heat but do not boil. The finished cheese sauce is known as Mornay sauce, or a béchamel sauce to which shredded or grated cheese is added. Step 3: Combine the Noodles with the Sauce Add the cooked pasta to the sauce. Stir to combine. It will seem way too soupy and creamy – that’s okay, that’s what you want! Pour into a buttered 2-quart baking dish and set aside. Step 4: Prepare the Crispy Topping In a small sauté pan over medium heat, melt the remaining butter and add the panko. Cook, stirring often, until golden brown, and then stir in the herbes de Provence or thyme. This step of browning the panko may seem unnecessary—you’d think it would brown in the oven—but I find it needs a head start on the stove to get really golden and crispy. Sprinkle the toasted panko over the pasta and cheese sauce, followed by the remaining 2 tablespoons Parmigiano-Reggiano. Bake for 25 to 30 minutes, or until bubbly and golden brown. Serve warm out of the oven and enjoy. Video Tutorial You May Also Like RecipeComments (426)Add Comment Recipe Comments (426) Add Comment Ingredients 1 pound (16 ounces) macaroni, cavatappi or penne pasta 1 stick (½ cup) unsalted butter, divided, plus more for greasing the pan ½ cup all-purpose flour 5 cups whole milk 12 ounces Gruyere, shredded (about 4 cups) 8 ounces extra-sharp Cheddar, shredded (about 2 cups) ⅔ cup grated Parmigiano-Reggiano 1 teaspoon salt, plus more for the pasta water ½ teaspoon ground black pepper ¼ teaspoon ground nutmeg 1 cup panko bread crumbs 1 teaspoon herbes de Provence or dried thyme 1 pound (16 ounces) macaroni, cavatappi or penne pasta 1 stick (½ cup) unsalted butter, divided, plus more for greasing the pan ½ cup all-purpose flour 5 cups whole milk 12 ounces Gruyere, shredded (about 4 cups) 8 ounces extra-sharp Cheddar, shredded (about 2 cups) ⅔ cup grated Parmigiano-Reggiano 1 teaspoon salt, plus more for the pasta water ½ teaspoon ground black pepper ¼ teaspoon ground nutmeg 1 cup panko bread crumbs 1 teaspoon herbes de Provence or dried thyme Instructions Preheat the oven to 375°F and set an oven rack in the middle position. Grease a 9x13-inch baking dish with butter. Bring a large pot of salted water to a boil. Add the pasta and cook until al dente, or just slightly underdone. (It will continue to cook in the oven so you don't want it fully cooked.) Drain the pasta and rinse it with cold water. Meanwhile, melt 6 tablespoons of the butter in a medium pot over low heat. Add the flour and cook for 2 minutes, stirring with a whisk. While whisking, gradually add the milk. Bring to a boil, then reduce the heat to low and cook, uncovered, for a few minutes more, until thickened and smooth. Off the heat, whisk in the Gruyere, Cheddar, ½ cup Parmigiano-Reggiano, salt, pepper, and nutmeg. (If the cheese doesn't fully melt off the heat, it's okay to place the pan back over low heat, but do not let the sauce boil.) Add the cooked pasta and stir well. It will be very soupy; that's good. Pour into the prepared baking dish and set aside. In a small skillet over medium heat, melt the remaining 2 tablespoons butter. Add the panko and cook, stirring often, until golden brown. Stir in the herbes de Provence or thyme. Sprinkle the toasted panko mixture over the pasta and cheese sauce, followed by the remaining tablespoon Parmigiano-Reggiano. Bake for 30 to 35 minutes, or until bubbly and golden brown. Note: To reheat leftovers, cover with aluminum foil and warm in a 300°F oven. Do not microwave. Freezer-Friendly Instructions: This can be frozen unbaked for up to 3 months. When you’re ready to cook it, defrost in the refrigerator for 24 hours, then proceed with the baking instructions in the recipe. Preheat the oven to 375°F and set an oven rack in the middle position. Grease a 9x13-inch baking dish with butter. Bring a large pot of salted water to a boil. Add the pasta and cook until al dente, or just slightly underdone. (It will continue to cook in the oven so you don't want it fully cooked.) Drain the pasta and rinse it with cold water. Meanwhile, melt 6 tablespoons of the butter in a medium pot over low heat. Add the flour and cook for 2 minutes, stirring with a whisk. While whisking, gradually add the milk. Bring to a boil, then reduce the heat to low and cook, uncovered, for a few minutes more, until thickened and smooth. Off the heat, whisk in the Gruyere, Cheddar, ½ cup Parmigiano-Reggiano, salt, pepper, and nutmeg. (If the cheese doesn't fully melt off the heat, it's okay to place the pan back over low heat, but do not let the sauce boil.) Add the cooked pasta and stir well. It will be very soupy; that's good. Pour into the prepared baking dish and set aside. In a small skillet over medium heat, melt the remaining 2 tablespoons butter. Add the panko and cook, stirring often, until golden brown. Stir in the herbes de Provence or thyme. Sprinkle the toasted panko mixture over the pasta and cheese sauce, followed by the remaining tablespoon Parmigiano-Reggiano. Bake for 30 to 35 minutes, or until bubbly and golden brown. Note: To reheat leftovers, cover with aluminum foil and warm in a 300°F oven. Do not microwave. Freezer-Friendly Instructions: This can be frozen unbaked for up to 3 months. When you’re ready to cook it, defrost in the refrigerator for 24 hours, then proceed with the baking instructions in the recipe. Pair with Nutrition Information Powered by Per serving (8 servings) Calories: 807 Fat: 45 g Saturated fat: 26 g Carbohydrates: 62 g Sugar: 10 g Fiber: 2 g Protein: 38 g Sodium: 760 mg Cholesterol: 130 mg Per serving (8 servings) Calories: 807 Fat: 45 g Saturated fat: 26 g Carbohydrates: 62 g Sugar: 10 g Fiber: 2 g Protein: 38 g Sodium: 760 mg Cholesterol: 130 mg This website is written and produced for informational purposes only. I am not a certified nutritionist and the nutritional data on this site has not been evaluated or approved by a nutritionist or the Food and Drug Administration. Nutritional information is offered as a courtesy and should not be construed as a guarantee. The data is calculated through an online nutritional calculator, Edamam.com. Although I do my best to provide accurate nutritional information, these figures should be considered estimates only. Varying factors such as product types or brands purchased, natural fluctuations in fresh produce, and the way ingredients are processed change the effective nutritional information in any given recipe. Furthermore, different online calculators provide different results depending on their own nutrition fact sources and algorithms. To obtain the most accurate nutritional information in a given recipe, you should calculate the nutritional information with the actual ingredients used in your recipe, using your preferred nutrition calculator. See more recipes: DinnerFreezer-FriendlyMake-AheadPizza, Pasta & VegetarianVegetables & SidesVegetarianAmerican Dinner Freezer-Friendly Make-Ahead Pizza, Pasta & Vegetarian Vegetables & Sides Vegetarian American