This post may include affiliate links; see our disclosure policy.
Here’s how to make homemade mac and cheese! Cook this ultimate comfort food from scratch and it’s better than any you’ve ever had.
Ready for the best EVER homemade mac and cheese? We promise: it’s really worth pulling out the superlatives here! Making this comfort food from scratch makes it taste infinitely better than the kind from a box. Want to impress everyone? This homemade mac and cheese tastes homey and cozy, with the best gooey, cheesy sauce and crunchy breadcrumbs. Alex and I made this for a recent family gathering and everyone around the table agreed: “this is the best mac and cheese.”
How to make homemade mac and cheese: basic steps!
Here’s the thing. Making homemade mac and cheese is easy, but you need to know a few basic cooking techniques to make it perfect. Here are the two techniques you’ll have to master:
- How to cook pasta to al dente.
- How to make a roux.
Once you’ve got these two skills under your belt, the rest is a piece of cake! Let’s talk through these briefly before we start.
How (and why!) to cook pasta to al dente
What is al dente? Al dente means “to the bite” in Italian. It refers to cooking pasta to just the point where it’s tender but has a subtly firm center. Here’s the thing: overcooked pasta is not only rubbery and unappetizing. It also has less nutrients and it makes you less full (read more here). Cooking the pasta for this homemade mac and cheese to al dente means it tastes better, you get more nutrients, and you’re full for longer. Win, win, win! Here are some notes on how to cook pasta to al dente:
- Don’t trust the package instructions! Most pasta packages have timing that results in overcooked pasta. Start tasting the pasta a few minutes before the package indicates.
- Taste and drain it right when it’s tender but firm inside. Some chefs say to look for a small white fleck at the core (others think it should just disappear for perfect al dente).
- Move quickly! Pasta can go from al dente to overcooked in a matter of seconds.
Tips for making a roux
The main kitchen technique you need for homemade mac and cheese is making a roux. What’s a roux? A “roux” (pronounced “Roo“) is flour and butter cooked together and used to thicken sauces. It’s usually made from equal parts of flour and butter. For mac and cheese, you make a roux and then add the cheese. This is what makes the gooey sauce: cheese by its would be too sticky. There are a few important things to note about making a roux:
- Measure out your ingredients in advance (mise en place). The cooking process goes fast, so you don’t want to be distracted by measuring. The French way to say measure out all your ingredients is mise en place, which means everything in its place.
- Don’t leave the stove, and watch closely. The flour and butter can burn easily here! You must stand by the stove and start adding milk right when the flour turns golden brown.
- Add the milk gradually. Pour in the milk and constantly whisk, adding it little by little, until it forms a smooth sauce. Once you get to this point, it’s smooth sailing!
Best noodles for homemade mac and cheese
By the way…you don’t have to use macaroni for homemade mac and cheese! No: it’s actually even tastier when you use different types of noodles. You can use all sorts of short pasta shapes, from shells to bowties to penne. Here are our favorite types of short pasta for mac and cheese, in order of preference:
- Conchiglie (shells): what we used here
- Cavatappi: cork-screw shapes
- Orecchiette: ear shapes
- Gigli (Campanelle): lily shapes
- Penne: long thin tubes with diagonal ends
- Gemelli: twisted tube shapes
- Rigatoni: long thicker tubes
Best cheese for homemade mac and cheese
There are a few different cheeses that work well in this homemade mac and cheese. Here’s what we’d recommend, and then a few other options:
- Use sharp cheddar and Monterey Jack. This is the perfect combination for a classic mac and cheese flavor! But be aware…
- Don’t use aged cheddar! It sounds like it would taste delicious, but aged cheddar doesn’t have quite the right flavor. Stay with a standard sharp.
- Get fancy with gouda, Havarti or white cheddar. Substitute the cheddar, or try these mac and cheese recipes: Gouda Mac and Cheese, Pesto Havarti Mac and Cheese, Instant Pot Mac and Cheese, or White Cheddar Mac and Cheese.
- Opt for healthy! Try Healthy Mac and Cheese with Broccoli.
Sides to serve with homemade mac and cheese
Cook this pasta to al dente and this cozy homemade mac and cheese is the stuff dreams are made of! We recently made a pan of this for family who were grieving a loved one, and it was just the right food that tastes like a hug. It’s perfect for anytime you need a cozy meal. Here are a few sides that are full of nutrients and fiber to make it into a healthy dinner idea:
- Perfect Spinach Salad or Spinach Apple Salad
- Ultimate Sauteed Vegetables are colorful and easy: a total treat!
- Fennel Orange Salad, Easy Arugula Salad or Arugula Beet Salad for an elegant vibe
- Roasted Asparagus with Lemon or Epic Roasted Broccoli add fiber
- Lemony Steamed Green Beans or Sauteed Green Beans are quick and easy
Of course, you can also serve this mac and cheese as a homey pasta side dish! Try it with Cajun Salmon or Lentil Sloppy Joes.
Tip: how to reheat mac and cheese!
Here’s a great homemade mac and cheese kitchen hack! You can save leftovers of mac and cheese in the refrigerator for about 5 days. But the cheese solidifies and dries out in the fridge! How to get it back to a creamy sauce? Here are our tips:
- Place it in a skillet and add a splash of milk. Use a ratio of about 1 cup noodles to 1 tablespoon milk.
- Heat over medium heat and stir until the sauce becomes creamy again!
This homemade mac and cheese recipe is…
Vegetarian. For gluten-free, use gluten-free noodles.
*Best* Homemade Mac and Cheese
Here’s how to make homemade mac and cheese! Cook this ultimate comfort food from scratch and it’s better than any you’ve ever had.
- Prep Time: 15 minutes
- Cook Time: 15 minutes
- Total Time: 30 minutes
- Yield: 10 to 12 as a side, 6 to 8 as a main 1x
- Category: Main Dish
- Method: Stovetop
- Cuisine: American
- Diet: Vegetarian
Ingredients
- 1 pound short pasta of any type (we like large shells)
- 8 ounces sharp cheddar cheese (not aged)
- 8 ounces Monterey Jack cheese
- 3 tablespoons unsalted butter
- 3 tablespoons all-purpose flour
- 1 ¾ cups 2% milk
- 1 teaspoon kosher salt
- ½ teaspoon onion powder
- ½ teaspoon garlic powder
- ½ cup seasoned Italian breadcrumbs (or plain breadcrumbs)
Instructions
- Boil the pasta: Bring a large pot of water to a boil and add about 1 tablespoon of kosher salt. Add the pasta and cook until al dente. Start tasting the pasta a few minutes before the package instructions and stop cooking once the pasta is just tender but still firm. Then drain the pasta in a colander and rinse it quickly with warm water.
- Meanwhile, make the sauce: Grate the cheese (if necessary). Measure out the butter, flour, milk, salt, onion powder, and garlic powder. In a large saucepan or Dutch oven, heat the butter over medium heat; when it melts, stir in the flour. Heat the mixture for about 2 minutes, stirring constantly. Immediately when the color starts to turn light brown, reduce the heat to low. Start to add the milk very slowly: whisk constantly until the mixture is completely smooth, then add a bit more milk until it is fully incorporated, then repeat. Once all the milk is added, add the salt, onion powder, and garlic powder. Continue cooking on low heat for about 2 minutes to thicken slightly, whisking frequently. After 2 minutes, gradually add the grated cheese and keep stirring until it is fully melted.
- Top with breadcrumbs and serve: Stir the pasta into the cheese sauce, then pour it into a dish and top with breadcrumbs. If you’d like, place it in a baking dish and broil it for 2 to 4 minutes until the crumbs are lightly browned, turning the pan to even out the browning as necessary. Serve immediately. Refrigerate leftovers up to 4 days. Reheat on the stovetop with a splash of milk and stir until creamy.
I love this recipe so much! If I wanted to make this the day before, how should I bake it?
We haven’t tried this one the day before! But if you do, you could reheat from refrigerated at 375F until warmed through — maybe about 20 minutes or so? Let us know how this goes!