My best-ever, MOST reliable mac and cheese recipe that tastes amazing every time! Starting with an easy homemade mac and cheese sauce for an ultra-smooth, velvety texture. Whip up a creamy mac and cheese on the stove in just 15 minutes, or bake it in the oven with a crispy breadcrumb topping!

Easy Homemade Mac and Cheese

I love homemade macaroni and cheese—it’s arguably the best food of all time. After years of trying to simplify, health-ify, & yumm-ify the dish, I’ve realized the secret to making the BEST, most delicious mac: a roux-based cheese sauce. It’s what makes this stovetop mac and cheese so rich & creamy, and it even keeps baked mac and cheese creamy on the inside!

I used to avoid recipes for mac and cheese with a roux because I was intimidated by how complicated it seemed, but it’s actually so simple if you know what to look for—and it makes the texture so much creamier. I’ll walk you through how to make an easy cheese sauce step-by-step, so you end up with an amazing mac every time!

Best Mac and Cheese Recipe
Creamy Stovetop Mac and Cheese

What is a roux & what does it do?

A roux is essentially a starchy paste, made of flour cooked in fat, that’s used to make thick, uniform sauces.

Starting with a roux ensures your homemade mac and cheese sauce turns out creamy & smooth, without any clumps. And it helps keep baked mac and cheese creamy and prevents it from drying out. The roux also helps hold the sauce together, so it reheats well without separating—so even the leftovers taste just as rich & creamy as the first time!

Simple Mac and Cheese from Scratch

Homemade Mac and Cheese Ingredients

  • Elbow Macaroni or Pasta of Choice. Use any pasta you like: small or large noodles, regular or gluten-free. Just be sure to follow the suggested cook time in the package directions. I love small noodles like elbow, cavatappi, shells, or bowties because they hold on to the cheese sauce well—but there’s also something extra fun about a spaghetti mac and cheese!
  • Butter. Cut cold butter into cubes, which you’ll melt to make the roux. I haven’t tested any butter substitutes in this recipe, but you could try using light olive oil instead.
  • All-Purpose Flour. For the most reliable easy roux, I recommend using all-purpose flour. The standard roux ratio is 1:1, equal parts flour and fat. You can make a gluten-free roux with a 1-to-1 gluten-free baking flour, although I haven’t tested it myself yet. If you want to try it out, use a 2:3 ratio of flour-to-fat (so 2 Tbsp GF flour + 3 Tbsp butter).
  • Salt & Pepper. To season the roux.
  • Milk. Use 2% or whole milk in your mac and cheese sauce for the richest flavor & creamiest texture. I don’t recommend using skim milk or nondairy milks in this recipe.
  • Cheese. The best cheeses for mac and cheese are options like sharp cheddar, gruyere, Swiss, & Gouda because they melt well and pair nicely together. My favorite is a cheddar & gruyere mac and cheese—the sharp, salty cheddar and sweet, nutty gruyere taste even better together! For the creamiest, meltiest result, I recommend using freshly shredded cheese off the block rather than pre-shredded cheeses (which won’t melt as well).

Baked Mac and Cheese Topping

  • Panko Breadcrumbs. I like to top my baked mac and cheese with panko breadcrumbs for an extra crispy, flaky topping! Many folks just sprinkle their baked mac with additional cheese before baking, but including breadcrumbs can add even more flavor & texture variety.
  • Grated Parmesan. Combine those breadcrumbs with parmesan for a cheesy, bubbly, golden-brown finish.
  • Butter. Mix the panko & parmesan together with melted butter to help the topping brown & crisp up in the oven.
Baked Mac and Cheese Recipe

How to Make the Best Mac and Cheese from Scratch

This easy mac and cheese recipe has 3 simple parts:

  • (1) Cook the noodles.
  • (2) Make the mac and cheese sauce.
  • (3) Stir the cooked noodles into the cheese sauce.

Then, it’s ready to enjoy straight out of the pot, or transfer to a casserole dish if you want to make baked macaroni and cheese!

(1) Cook Noodles Until Al Dente

First, bring a large pot of salted water to a boil and cook your pasta according to the package directions. I typically cook my noodles for ~1 minute less than the package suggests, so they’re cooked through but still firm. (This helps prevent the mac from getting mushy.)

Cook macaroni noodles according to package directions.
Cook macaroni noodles according to the package directions, until al dente.
Drain noodles and set aside until cheese sauce is ready.
Drain cooked noodles in a colander and set aside.

Should you rinse pasta for mac and cheese?

Don’t rinse your cooked pasta! Rinsing removes the starch, but we want to keep that starch because it helps the mac and cheese sauce stick to the noodles. Just drain your noodles in a colander and set aside until the cheese sauce is ready.

(2) How to Make Mac and Cheese Sauce with a Roux

The Roux:

Combine Butter, Flour & Seasonings

For the roux, first melt cubed butter in a large saucepan over medium heat. Once melted, add in flour, salt, and pepper and whisk continuously for about 1 minute. Make sure all the flour is integrated into the butter and use your whisk to break up any clumps.

Melt cubed butter in a saucepan over medium heat.
In a saucepan over medium heat, melt butter cubes.
Add flour and seasonings and whisk continuously for 1-2 minutes.
Add flour, salt, and pepper and whisk constantly for 1-2 minutes.
Whisk until the roux is thick and integrated, without any clumps of raw flour. Then add the milk.
Stir until all of the flour is integrated and there are no clumps.

How do you know when a roux is done?

Your roux is done when you have a thick, uniform paste that’s very light brown in color. It should smell nutty & buttery, and any raw flour smell should be gone. In my experience, this roux only takes 1-2 minutes max to thicken. Basically, as soon as all the flour & butter are incorporated, you’re ready to start adding milk.

The Roux Sauce

Add Milk

When your roux is thick & integrated, slowly pour in cold milk a little at a time, whisking continuously so it doesn’t burn. Continue to cook over medium heat for 5-7 minutes, stirring constantly, until the roux sauce thickens. It’s important to keep whisking the whole time to prevent clumping and create a silky-smooth texture.

Slowly pour milk into the pan, whisking constantly.
Slowly pour cold milk into the roux, whisking continuously as you pour.
Continue whisking constantly as it cooks for 5-7 minutes over medium heat, until the roux sauce is thick enough to coat the back of a spoon.
Whisk constantly as it continues to cook for 5-7 minutes over medium heat, until thickened.

How thick should a roux sauce be?

When it’s done, your roux sauce should be smooth, creamy, and thick enough to coat the back of a spoon. It will only take 5-7 minutes to thicken, so set a timer so you don’t stress waiting while you whisk! Once you notice the sauce starts sticking to the sides of the pan, you’re ready to melt in the cheese.

Mac and Cheese Sauce

Add Cheese & Melt

Once your roux sauce has thickened, turn the heat to low and stir in handfuls of freshly shredded cheddar and gruyere (or your favorite cheeses). Continue stirring for 2-3 minutes, until the cheese has melted, then turn off the heat.

Add freshly shredded cheese into the roux sauce and whisk well.
Reduce the heat to low and add freshly shredded cheddar and gruyere, or your favorite cheeses.
Whisk until the cheese has melted, around 2-3 minutes. Then turn off the heat.
Stir continuously for 2-3 minutes, until the cheese melts, then turn off the heat.

How do you prevent curdled mac and cheese sauce?

To prevent mac and cheese sauce from curdling, lower the heat on the stove, then add your freshly shredded cheese in multiple batches rather than all at once. Cheese curdles if it’s heated too quickly, but these steps help minimize the heat required for it to melt, so you end up with a smooth, clump-free cheese sauce.

(3) Stir Noodles into Cheese Sauce

As soon as the mac and cheese sauce is ready, turn off the heat and add in the cooked noodles. Be sure to stir well, so all the noodles are coated in the sauce. Then your stovetop mac and cheese is ready to serve & enjoy, or transfer to a baking dish to make baked mac and cheese!

Stir cooked noodles into the mac and cheese sauce to coat.
Stir cooked macaroni noodles into the cheese sauce and coat completely.

What’s the point of baking mac and cheese?

This stovetop mac and cheese is delicious as-is—you don’t have to bake it. But baking mac and cheese creates a crispy, golden-brown crust on the top & edges that makes the dish even more comforting! I’ll make mac and cheese on the stove for a quick weeknight meal, but a baked mac and cheese casserole can be a fun way to make a dinner or holiday gathering feel special.

How to Make Baked Mac and Cheese

  1. Follow the same procedure to make a quick mac and cheese on the stove.
  2. Then, transfer the stovetop mac into a 1.5-quart baking dish. I used an 8-inch round baking dish, or you could use a small 10×6-inch casserole dish. (If you want to use a larger 13×9-inch casserole dish, double the recipe.)
  3. For the baked mac and cheese topping, stir together panko breadcrumbs, grated parmesan, and melted butter in a small bowl.
  4. Cover the top of your macaroni casserole with the breadcrumb topping mixture.
  5. Bake mac and cheese at 350°F (180°C) for 20-25 minutes, until it’s browned & bubbly on top. (You don’t need to cover the mac while it bakes—leave it uncovered so the topping can become crispy & golden-brown!) If the topping hasn’t browned as much as you’d like after 20 minutes, turn up the oven to broil for 2-3 minutes at the end.
Transfer stovetop mac and cheese into a 1.5-qt baking dish.
Transfer homemade mac and cheese into a 1.5-quart baking dish.
Mix together panko breadcrumbs, grated parmesan, and melted butter. Then sprinkle topping over mac and cheese casserole.
Mix breadcrumbs, parmesan, and melted butter together in a bowl, then sprinkle on top of macaroni.
Bake mac and cheese at 350°F (180°C) for 20-25 minutes, until the topping is browned and bubbly.
Bake mac and cheese for 20-25 minutes at 350°F (180°C), until the topping is golden-brown.

Tips for an Extra Creamy Baked Mac and Cheese

Even the best baked mac and cheese will taste dried-out if it’s baked too long, so avoid over-baking. Since this stovetop mac is fully cooked, it doesn’t need to cook longer in the oven—you just want a crispy topping.

So for an extra-creamy, melty, gooey baked mac and cheese, try baking for less time, then broil at the end for a few minutes to get the topping browned & crispy! If it still isn’t as creamy as you’d like, try some of these tips:

  • Bake in a deeper, narrower baking dish. You’ll get less of the crispy topping, but your baked mac and cheese will stay softer & gooier on the inside. 
  • Use 8 oz noodles or less. Adding more noodles to the same amount of cheese sauce can make your homemade mac and cheese less-creamy overall. For an even creamier mac, start with fewer noodles and stir them into the sauce batches until you get the texture you want.
  • Make the cheese sauce with whole milk. The rich fat content of whole milk will make your sauce even richer & creamer. Or swap half the milk for heavy cream!
Best Creamy Baked Mac and Cheese

Storage & Freezing

Once cooled completely, store homemade mac and cheese in an airtight container in the fridge for up to 1 week. Let baked mac and cheese cool completely in the dish, then store it in the fridge covered with a lid, foil, or plastic wrap.

You can also freeze homemade mac and cheese so it’s ready to reheat whenever you want it! Just portion the cooled macaroni into freezer-safe containers or zip-top bags and freeze for up to 6 months. Thaw overnight in the fridge before reheating in the microwave, oven, or on the stove.

Easy Mac and Cheese Recipe Stovetop

What to do with leftover mac and cheese?

My favorite way to use up leftovers is to make baked mac and cheese bites! I love this recipe because it uses cold leftover macaroni straight out of the fridge, you roll it into balls, and it’s coated in a crispy breadcrumb topping just like this baked mac.

One of the easiest ways to jazz up reheated macaroni is to stir in some cooked vegetables or meat, like ground beef or even chopped hot dogs. Or get real creative with your comfort food and try a grilled mac and cheese sandwich!

Best Mac and Cheese Recipe

Easy Homemade Mac and Cheese (Stovetop or Baked)

How to make an easy, creamy stovetop mac and cheese in just 15 minutes—or bake it in the oven with a crispy breadcrumb topping! Starting with a simple roux-based homemade mac and cheese sauce for an extra-smooth, velvety texture.
5 stars (1 rating)

Ingredients

Stovetop Mac and Cheese

  • 8 oz elbow macaroni noodles, uncooked (or your favorite noodle)
  • 3 Tbsp butter, cubed (1.5oz)
  • 3 Tbsp all-purpose flour, (23g)
  • ½ tsp salt
  • pinch of black pepper, to taste
  • 2 cups whole milk, or 2% milk (480mL)
  • 4 oz sharp cheddar cheese, freshly shredded (1 cup)
  • 4 oz gruyere cheese, freshly shredded (1 cup)

Baked Mac and Cheese Topping

  • ¼ cup panko breadcrumbs, (21g)
  • 2 Tbsp grated parmesan, (10g)
  • 1 Tbsp butter

Equipment

Instructions 

Cook Noodles

  • Bring a large pot of salted water to a boil. Cook macaroni or noodles of choice according to package directions until al dente, ~7-8 minutes. (While the pasta cooks, you can start the cheese sauce.)
  • Drain cooked pasta but don’t rinse. Set aside until cheese sauce is ready.

Make Cheese Sauce with a Roux

  • In a large saucepan over medium heat, melt cubed butter.
  • Add flour, salt, and pepper and whisk to integrate (~1 minute). It will thicken up quickly.
  • As soon as the roux mixture is integrated, slowly pour in cold milk a little at a time, whisking continuously so it doesn’t burn.
  • Continue whisking constantly as it cooks over medium heat for 5-7 minutes, until the sauce starts to thicken and stick to the sides of the pan. It should be smooth & thick enough to coat the back of a spoon.
  • Once thickened, turn the heat to low and add freshly shredded cheddar and gruyere, or cheeses of choice. Stir until melted (2-3 minutes), then remove from heat.

Stir Noodles into Cheese Sauce

  • Add cooked macaroni noodles into cheese sauce and stir to coat completely.
  • Serve stovetop mac and cheese warm & enjoy! (Or transfer to a baking dish to make baked mac and cheese.)

For Baked Mac and Cheese:

  • Preheat oven to 350°F (180°C).
  • Transfer stovetop mac and cheese to a 1.5-qt baking dish. (I used a round 8-inch dish, or you can use a small 10×6-inch casserole dish.)
  • In a small bowl, stir together breadcrumbs, parmesan, and melted butter. Add breadcrumb mixture on top of macaroni casserole.
  • Bake mac and cheese for 20-25 minutes at 350°F, until browned & bubbly. (If you want it to brown more on top, broil at the end for 2-3 minutes.)

Storage

  • Once cooled completely, store homemade mac and cheese in an airtight container in the fridge for 5-7 days.
  • Or let baked mac and cheese cool completely in the dish, then cover and store in the fridge.

Notes

Nutrition for stovetop mac and cheese

Per 1 cup:
472 calories | 25g fat | 41g carbs | 1.6g fiber | 5.2g sugar | 20g protein
614mg sodium | 76mg cholesterol

Nutrition for baked mac and cheese with breadcrumb topping

Per 1 cup:
515 calories | 27.9g fat | 44.2g carbs | 1.7g fiber | 5.3g sugar | 21.4g protein
663mg sodium | 83mg cholesterol
Serving: 1cup, Calories: 472kcal, Carbohydrates: 41g, Protein: 20g, Fat: 25g, Cholesterol: 76mg, Sodium: 614mg, Fiber: 1.6g, Sugar: 5.2g
Did you make this recipe?Share a photo and tag us @mindovermunch — we can’t wait to see what you’ve made!