Italian mac and cheese is the ultimate comfort food – smooth, creamy, and easy to make! With a blend of Italian cheeses and fresh herbs, this dish has an amazing depth of flavor that will keep you coming back for more. It's perfect for weeknight meals or for impressing guests at your next dinner party!
Cook the pasta: bring a large pot of water to a boil. Stir in the kosher salt. Then add the penne rigate. Cook according to the package instructions until al dente. Just before the pasta is ready, reserve 1 cup of pasta water and set aside. Then drain the pasta when ready.
Make the base of the sauce: while the pasta cooks, heat a large sauté pan or pot over medium heat. Melt the butter in the pan and then gradually whisk in the flour to form a roux (a thick paste that helps thicken the sauce). Cook for 1 to 2 minutes while whisking continuously until the roux becomes slightly golden. Then gradually whisk in the milk, stirring continuously to prevent lumps. Continue to cook while whisking constantly until the mixture thickens enough to coat the back of a spoon, about 5 to 7 minutes.
Add the herbs and cheese: Whisk in the fresh thyme, oregano, and basil. Cook for 1 to 2 minutes to allow the flavors to infuse. Then remove the pan from the heat and gradually add the shredded mozzarella, fontina, and Parmigiano Reggiano, whisking until fully melted and smooth. If the sauce becomes too thick, add a bit of the reserved pasta water to achieve your desired consistency.
Combine the pasta and cheese sauce: fold the cooked pasta into the cheese sauce until evenly coated. Add pasta water as needed to achieve your desired consistency. Season with salt and black pepper to taste as needed. Garnish with Italian breadcrumbs, serve, and enjoy!
Video
Notes
Penne rigate: you can substitute with a different shape. Short pasta works best because it grabs the sauce, packing flavor into every bite. Rigatoni, ziti, fusilli, or elbow macaroni are great options.
Whole milk: it's important to use room temperature milk so it blends smoothly into the sauce. I take mine out of the refrigerator 30 minutes beforehand so it comes up to temperature.
Thyme, oregano, basil: the fresh herbs can be substituted with 1 teaspoon each of dried. You can use different herbs instead, like marjoram, rosemary or parsley. Italian seasoning also works well.
Italian breadcrumbs: I recommend using my pangrattato recipe for the most flavorful, crispy Italian breadcrumbs!
Fresh pasta conversion: substitute 1½ pounds of fresh pasta for every pound of dried. Fresh pasta cooks faster, so adjust the time accordingly. Go slowly when adding pasta water to the sauce because fresh pasta absorbs less water. This will prevent the sauce from getting too soupy.
Use a different blend of cheese: when substituting with different cheese varieties, I recommend keeping the same total amount as the recipe (16 ounces). Using a blend of melty cheese and aged cheese maintains good flavor and texture. Fontina can be substituted with Gruyere or cheddar, mozzarella with provolone or havarti, and Parmigiano Reggiano with Pecorino Romano or Grana Padano. Always shred your own cheese for the best flavor and texture!
Add pancetta: mix in crispy pancetta for extra Italian flavor.
Make it spicy: add ½ teaspoon of crushed red pepper flakes for a pop of heat. Add more to taste as needed.
For a crispy mac and cheese: transfer the cooked mac and cheese to a broiler-safe dish. Sprinkle with more shredded cheese as desired. Place under the broiler for 5 to 10 minutes to crisp up the top. Watch very carefully to prevent burning!
Storage: leftovers can be stored in an airtight container in the refrigerator for up to 3 days or in the freezer for up to 3 months. I refrigerate any unused pasta water for freshening up the leftovers.
Reheating: all leftovers should be reheated to 165°F (74°C) throughout. For the stovetop: reheat in a saucepan over low heat. Add a splash of milk for creaminess and pasta water as needed to loosen the sauce. For the microwave: place leftovers in a covered, microwave safe bowl. Heat in 1-minute increments, stirring in between. Add a bit of milk and pasta water as needed to achieve your desired consistency. For the oven: place in an oven-safe dish and cover with foil. Bake in a 350°F (177°C) oven for about 20 minutes. Remove the foil during the last few minutes of baking to crisp up the top. Add pasta water and milk as needed to achieve your desired consistency.