If you ask me, mac and cheese is pure comfort food magic.
This classic dish makes a family-friendly meal that’s loaded with creamy, cheesy goodness. Tender pasta and rich cheese sauce come together in the most satisfying way possible.
It starts with perfectly cooked elbow macaroni tossed in a smooth cheese sauce made from real cheddar. A golden, bubbly top from the oven and that perfect gooey texture make every bite worth it.
It’s a crowd-pleasing dish that hits the spot every time, perfect for busy weeknights or lazy Sunday dinners.

Why You’ll Love This Mac and Cheese
- Rich, creamy cheese sauce – The combination of sharp cheddar and Gruyere creates an incredibly smooth and flavorful sauce that coats every piece of pasta perfectly.
- Crispy golden topping – The buttery panko breadcrumb and Parmesan topping adds the perfect crunch that contrasts beautifully with the creamy pasta underneath.
- Comfort food at its best – This is the kind of mac and cheese that makes you feel warm and satisfied, perfect for family dinners or when you need a little extra comfort.
- Made from scratch goodness – Skip the boxed stuff and make this homemade version that tastes so much better and uses real cheese and simple ingredients you probably already have.
- Great for feeding a crowd – This recipe makes a generous portion that’s perfect for potlucks, family gatherings, or meal prep for the week ahead.
What Kind of Cheese Should I Use?
The cheese blend is really what makes this mac and cheese special, and you have some flexibility with your choices. Sharp cheddar is the star here – it gives you that classic mac and cheese flavor we all love, and the sharper the better for more depth. Gruyere adds a nutty, creamy element that takes this dish up a notch, but if you can’t find it or it’s too pricey, you can substitute with Swiss or even more cheddar. When it comes to buying cheese, always go for the block cheese and shred it yourself rather than using pre-shredded – it melts so much better and gives you that smooth, creamy sauce. The Parmesan for the topping can be either freshly grated or the good stuff from a container, since it’s just adding a nice finishing touch.

Options for Substitutions
This mac and cheese recipe is pretty forgiving when it comes to swaps and substitutions:
- Elbow macaroni: Any short pasta with ridges or tubes works great here – try shells, cavatappi, or penne. The key is choosing pasta that holds onto that creamy cheese sauce.
- Sharp cheddar and Gruyere: Feel free to mix and match your favorite cheeses! Try combining mild cheddar with Monterey Jack, or use Gouda instead of Gruyere. Just keep the total amount of cheese the same – about 6 cups total.
- Heavy whipping cream: You can substitute with half-and-half or even more whole milk, though your sauce might be slightly less rich. For a lighter version, try evaporated milk.
- Panko crumbs: Regular breadcrumbs work fine, or you can make your own by crushing up crackers or even crushed cornflakes for extra crunch.
- Whole milk: 2% milk works in a pinch, but avoid skim milk as it won’t give you that creamy texture. You could also use half whole milk and half chicken or vegetable broth.
- All purpose flour: This is pretty important for the roux that thickens your sauce, so try not to skip it. If you’re gluten-free, use a 1:1 gluten-free flour blend.
Watch Out for These Mistakes While Cooking
The biggest mistake when making mac and cheese is adding the cheese to a sauce that’s too hot, which causes the proteins to seize up and create a grainy, broken mess instead of a smooth cheese sauce – always let your milk mixture cool slightly off the heat before whisking in the cheese gradually.
Another common error is undercooking your roux (the butter and flour mixture), so make sure to cook it for at least 2-3 minutes while whisking constantly to eliminate that raw flour taste that can ruin your sauce.
Don’t forget to cook your pasta just shy of al dente since it will continue cooking in the oven, and always reserve some pasta water before draining – a splash can help loosen up a thick sauce.
For the perfect golden top, mix your panko with melted butter and cheese before sprinkling it on, and if your casserole starts browning too quickly, simply cover it with foil for the remaining baking time.

What to Serve With Mac and Cheese?
Mac and cheese is pretty much perfect on its own, but I love pairing it with something fresh and crisp to balance out all that creamy goodness. A simple green salad with a tangy vinaigrette works great, or you could go with some roasted broccoli or green beans on the side. If you want to make it more of a complete meal, grilled chicken, pulled pork, or even some crispy bacon bits mixed right into the mac and cheese are always crowd-pleasers. For a fun twist, serve it alongside some garlic bread or dinner rolls for extra carb-loading comfort.
Storage Instructions
Refrigerate: Leftover mac and cheese keeps really well in the fridge for up to 4 days in a covered container. The cheese sauce might look a little thick when cold, but don’t worry – it comes back to life when you reheat it! I actually think it tastes even better the next day after all those flavors have had time to meld together.
Freeze: You can absolutely freeze this mac and cheese for up to 3 months. I like to portion it out in individual servings in freezer-safe containers – perfect for quick weeknight dinners! Just make sure it’s completely cooled before freezing, and maybe add a splash of milk when reheating since the sauce can get a bit thick.
Warm Up: To bring your mac and cheese back to creamy perfection, add a splash of milk and reheat it slowly in the oven at 350°F until bubbly, or warm it up in the microwave in 30-second intervals, stirring between each round. If you want that crispy top again, just pop it under the broiler for a minute or two.
| Preparation Time | 15-20 minutes |
| Cooking Time | 30-40 minutes |
| Total Time | 45-60 minutes |
| Level of Difficulty | Medium |
Estimated Nutrition
Estimated nutrition for the whole recipe (without optional ingredients):
- Calories: 4700-5100
- Protein: 160-185 g
- Fat: 270-310 g
- Carbohydrates: 350-390 g
Ingredients
For the pasta:
- 16 oz cooked elbow macaroni (or other tubular pasta)
- 1 tbsp extra virgin olive oil
For the cheese sauce:
- 6 tbsp unsalted butter
- 1/3 cup all-purpose flour
- 3 cups whole milk
- 1 cup heavy whipping cream
- 4 cups shredded sharp cheddar cheese
- 2 cups shredded gruyere cheese
- Salt, to taste
- Black pepper, to taste
For the crumb topping:
- 1 1/2 cups panko breadcrumbs
- 4 tbsp butter, melted
- 1/2 cup shredded parmesan cheese
- 1/4 tsp smoked or regular paprika
Step 1: Prepare the Oven, Dish, and Cheeses
- 4 cups shredded sharp cheddar cheese
- 2 cups shredded Gruyere cheese
Preheat your oven to 350°F (175°C).
Lightly grease a large 3 or 4-quart baking dish and set it aside.
In a large bowl, combine all the shredded cheeses—the sharp cheddar and Gruyere—so they’re ready to use for both the cheese sauce and topping later.
Step 2: Cook and Season the Pasta
- 16 oz cooked elbow macaroni (or other tubular pasta)
- 1 tbsp extra virgin olive oil
Cook the elbow macaroni one minute less than al dente, following the package instructions.
Once cooked, drain the pasta and transfer it to a large bowl.
Drizzle the warm pasta with the olive oil and stir to coat it evenly.
Allow the pasta to cool slightly while you prepare the cheese sauce.
I like to undercook the pasta just a bit because it continues to cook in the oven and absorbs the cheesy goodness.
Step 3: Make the Cheese Sauce
- 6 tbsp unsalted butter
- 1/3 cup all-purpose flour
- 3 cups whole milk
- 1 cup heavy whipping cream
- salt, to taste
- black pepper, to taste
- 4 cups shredded sharp cheddar cheese (from Step 1)
- 2 cups shredded Gruyere cheese (from Step 1)
Melt the unsalted butter in a deep saucepan, Dutch oven, or stock pot over medium heat.
Whisk in the flour and continue whisking for about 1 minute until the mixture is bubbly and just turning golden.
Gradually whisk in the whole milk and heavy whipping cream, stirring until the mixture is smooth.
Keep whisking until bubbles form on the surface, then continue cooking and whisking for another 2 minutes.
Season with salt and black pepper to taste.
Next, add two cups of the shredded cheese mixture and whisk until smooth.
Add another two cups of shredded cheese and whisk again until the sauce is creamy and thick.
Step 4: Combine Pasta and Cheese Sauce
- cooked elbow macaroni coated with olive oil (from Step 2)
- cheese sauce (from Step 3)
Add the cooled, oiled macaroni from Step 2 to the pot with the cheese sauce from Step 3.
Stir everything together until the pasta is fully coated in the thick, creamy sauce and well combined.
Step 5: Assemble the Mac and Cheese in the Baking Dish
- mac and cheese mixture (from Step 4)
- remaining shredded sharp cheddar and Gruyere cheese (from Step 1)
Pour half of the mac and cheese mixture into your prepared baking dish.
Sprinkle half of the remaining shredded cheese mixture (from Step 1) over the layer.
Then, add the rest of the mac and cheese mixture on top.
Finish by topping with the final portion of remaining cheese.
This layering adds extra gooeyness throughout the bake.
Step 6: Prepare the Crispy Topping
- 1 1/2 cups panko breadcrumbs
- 1/2 cup shredded Parmesan cheese
- 4 tbsp butter, melted
- 1/4 tsp smoked or regular paprika
In a small bowl, combine the panko breadcrumbs, shredded Parmesan cheese, melted butter, and smoked or regular paprika.
Mix until the crumbs are evenly coated.
Sprinkle this mixture evenly over the mac and cheese casserole, covering it completely.
This step makes the topping extra crunchy—I love the flavor that smoked paprika adds for a subtle smoky note.
Step 7: Bake and Serve
Bake the assembled mac and cheese in the preheated oven for about 30 minutes, or until the top is bubbly and golden brown.
Serve immediately and enjoy your decadent homemade mac and cheese!

Rich Mac and Cheese
Ingredients
For the pasta:
- 16 oz cooked elbow macaroni (or other tubular pasta)
- 1 tbsp extra virgin olive oil
For the cheese sauce:
- 6 tbsp unsalted butter
- 1/3 cup all-purpose flour
- 3 cups whole milk
- 1 cup heavy whipping cream
- 4 cups shredded sharp cheddar cheese
- 2 cups shredded Gruyere cheese
- salt, to taste
- black pepper, to taste
For the crumb topping:
- 1 1/2 cups panko breadcrumbs
- 4 tbsp butter, melted
- 1/2 cup shredded Parmesan cheese
- 1/4 tsp smoked or regular paprika
Instructions
- Preheat your oven to 350°F (175°C). Lightly grease a large 3 or 4-quart baking dish and set it aside. In a large bowl, combine all the shredded cheeses—the sharp cheddar and Gruyere—so they're ready to use for both the cheese sauce and topping later.
- Cook the elbow macaroni one minute less than al dente, following the package instructions. Once cooked, drain the pasta and transfer it to a large bowl. Drizzle the warm pasta with the olive oil and stir to coat it evenly. Allow the pasta to cool slightly while you prepare the cheese sauce. I like to undercook the pasta just a bit because it continues to cook in the oven and absorbs the cheesy goodness.
- Melt the unsalted butter in a deep saucepan, Dutch oven, or stock pot over medium heat. Whisk in the flour and continue whisking for about 1 minute until the mixture is bubbly and just turning golden. Gradually whisk in the whole milk and heavy whipping cream, stirring until the mixture is smooth. Keep whisking until bubbles form on the surface, then continue cooking and whisking for another 2 minutes. Season with salt and black pepper to taste. Next, add two cups of the shredded cheese mixture and whisk until smooth. Add another two cups of shredded cheese and whisk again until the sauce is creamy and thick.
- Add the cooled, oiled macaroni from Step 2 to the pot with the cheese sauce from Step 3. Stir everything together until the pasta is fully coated in the thick, creamy sauce and well combined.
- Pour half of the mac and cheese mixture into your prepared baking dish. Sprinkle half of the remaining shredded cheese mixture (from Step 1) over the layer. Then, add the rest of the mac and cheese mixture on top. Finish by topping with the final portion of remaining cheese. This layering adds extra gooeyness throughout the bake.
- In a small bowl, combine the panko breadcrumbs, shredded Parmesan cheese, melted butter, and smoked or regular paprika. Mix until the crumbs are evenly coated. Sprinkle this mixture evenly over the mac and cheese casserole, covering it completely. This step makes the topping extra crunchy—I love the flavor that smoked paprika adds for a subtle smoky note.
- Bake the assembled mac and cheese in the preheated oven for about 30 minutes, or until the top is bubbly and golden brown. Serve immediately and enjoy your decadent homemade mac and cheese!