Go Back
+ servings
Creamy Mac and Cheese Recipe

Creamy Mac and Cheese

Wholesome Cove
This creamy mac and cheese is made entirely from scratch with a silky roux-based béchamel sauce, freshly grated sharp cheddar, and nutty Gruyère for a rich, golden cheese sauce that coats every noodle perfectly.
Ready in just 30 minutes on the stovetop, it's the ultimate comfort food that's simple enough for a weeknight but impressive enough to serve at any gathering.
No ratings yet
Prep Time 10 minutes
Cook Time 20 minutes
Total Time 30 minutes
Course Side Dish
Cuisine American
Servings 6 servings
Calories 610 kcal

Equipment

  • Large pot - For boiling pasta
  • Heavy-bottomed saucepan or Dutch oven - For making the cheese sauce — thin pans scorch easily
  • Box grater or cheese grater - For freshly grating the cheese
  • Wooden spoon or silicone spatula
  • Whisk
  • Measuring cups and spoons
  • Colander - For draining pasta
  • Ladle - (optional) For serving
  • Broiler-safe baking dish - (optional) For finishing under the broiler

Ingredients
  

Pasta

  • 1 lb elbow macaroni - 450g
  • salt - For the pasta water — use generously

Cheese Sauce

  • 4 tbsp unsalted butter - 57g
  • ¼ cup all-purpose flour - 30g
  • 2 cups whole milk - 480ml, warmed
  • 1 cup heavy cream - 240ml, warmed
  • 2 cups sharp cheddar cheese - 200g, freshly grated from a block
  • 1 cup Gruyère cheese - 100g, freshly grated
  • 1 tsp Dijon mustard
  • ½ tsp smoked paprika
  • ½ tsp garlic powder
  • ¼ tsp onion powder
  • ¼ tsp white pepper
  • salt - To taste, for the sauce

For Garnish

  • smoked paprika - Optional, for dusting on top
  • freshly cracked black pepper - Optional, for garnish

Instructions
 

  • Fill a large pot with 4–5 quarts (3.8–4.7L) of water and bring to a rolling boil over high heat. Add at least 1 tablespoon of salt — the water should taste pleasantly salty.
  • Add the elbow macaroni and cook 1–2 minutes less than package directions so it's just barely al dente. Before draining, reserve ½ cup (120ml) of starchy pasta water, then drain and set aside without rinsing.
  • Melt the butter in a heavy-bottomed saucepan over medium heat, then add the flour all at once and whisk constantly for 1½–2 minutes until the mixture turns slightly golden and smells nutty.
  • Reduce heat to medium-low and slowly pour in the warmed milk about ¼ cup at a time, whisking constantly after each addition, then pour in the warmed heavy cream in a steady stream. Increase to medium heat and whisk for 3–5 minutes until the sauce thickens enough to coat the back of a spoon.
  • Remove the pan from heat and stir in the Dijon mustard, smoked paprika, garlic powder, onion powder, white pepper, and salt to taste.
  • With the sauce off the heat, add the shredded cheddar and Gruyère in two to three batches, stirring gently after each addition until fully melted and the sauce is glossy and smooth.
  • Add the drained pasta to the cheese sauce and fold together until every noodle is evenly coated, adding reserved pasta water a tablespoon at a time if the sauce is too thick. Serve immediately, garnished with a dusting of smoked paprika or cracked black pepper.

Notes

  • Always grate your own cheese from a block — pre-shredded cheese contains anti-caking agents that prevent smooth melting and result in a grainy sauce.
  • Warm the milk and cream before adding them to the roux to prevent lumps and ensure even thickening.
  • Never add cheese to a boiling or vigorously simmering sauce — remove the pan from heat first to avoid a grainy, broken sauce.
  • Pull the pasta 1–2 minutes before the package directions say — it will finish cooking in the hot cheese sauce and absorb some liquid, so starting al dente prevents mushiness.
  • The Dijon mustard won't make the dish taste like mustard — it amplifies the cheese flavor and adds subtle depth that's hard to identify but easy to miss when omitted.
  • Save the pasta cooking water before draining — the starch it contains is perfect for loosening a too-thick sauce without diluting flavor.
  • Store leftovers in an airtight container in the refrigerator for up to 4 days, or freeze for up to 2 months.
  • To reheat, warm gently on the stovetop over low heat with a splash of milk, stirring until the sauce loosens back to a creamy consistency — avoid high heat.
  • For a baked version, transfer the sauced pasta to a baking dish, top with buttered breadcrumbs and extra cheese, and bake at 375°F (190°C) for 20–25 minutes until golden.
  • Gruyère can be substituted with Fontina, Havarti, or white cheddar if needed — all melt smoothly and complement the sharp cheddar well.

Nutrition

Serving: 1ServingCalories: 610kcalCarbohydrates: 58gProtein: 24gFat: 32gSaturated Fat: 19gPolyunsaturated Fat: 1.5gMonounsaturated Fat: 8gCholesterol: 95mgSodium: 520mgPotassium: 290mgFiber: 2gSugar: 6gVitamin A: 16IUCalcium: 37mgIron: 14mg
Keyword cheese sauce from scratch, comfort food pasta, creamy mac and cheese, homemade mac and cheese, stovetop mac and cheese
Tried this recipe?Let us know how it was!