How to Make Creamy Mac and Cheese from Scratch
Proper mac and cheese made from scratch takes the same time as the boxed version and is in a different universe of flavour. A velvety béchamel base, sharp cheddar that melts into silk, and pasta that's coated in cheese sauce so thick it clings to every curve. This is comfort food at its finest.
Total time: 25 min · Servings: 4 portions
Ingredients
- 350g short pasta (elbow macaroni, shells, or cavatappi — anything with curves to trap the sauce)
- 40g butter
- 3 tbsp plain flour
- 500ml whole milk (room temperature or warm — cold milk causes lumps)
- 250g sharp/mature cheddar (grated — do NOT use pre-shredded bags, they don't melt smoothly)
- 50g Gruyère or Parmesan (grated, for depth)
- 1 tsp Dijon mustard
- 1/4 tsp garlic powder
- 1/4 tsp smoked paprika
- Salt, pepper, pinch of nutmeg
Instructions
-
Cook the pasta: Boil pasta in salted water until 1 minute short of al dente. Drain, reserving 120ml pasta water.
Tip: The pasta finishes cooking in the cheese sauce, so slightly underdone is correct. -
Make the roux: In the same pot, melt butter over medium heat. Add flour and whisk constantly for 1 minute until the mixture (roux) turns golden and smells nutty.
Tip: Cooking the flour removes the raw taste. Don't let it brown — you want a blonde roux for a white cheese sauce. -
Add milk gradually: Pour in the milk in a slow, steady stream, whisking constantly. The sauce will seize up and get thick at first — keep whisking and adding milk. It will smooth out. Cook for 3–4 minutes until thickened enough to coat the back of a spoon.
Tip: Warm milk = smooth sauce. Cold milk = lumpy struggle. If you get lumps, whisk vigorously or pass through a sieve. -
Melt the cheese: Remove from heat (important — direct heat can make cheese grainy). Add the grated cheese in three additions, stirring between each until melted. Add mustard, garlic powder, paprika, nutmeg, salt, and pepper.
Tip: Removing from heat before adding cheese prevents it from splitting. This is the secret to silky-smooth cheese sauce. -
Combine: Add the cooked pasta to the cheese sauce and stir until every piece is coated. If it's too thick, add reserved pasta water 1 tablespoon at a time until you reach your ideal creaminess.
Tip: Mac and cheese thickens as it cools, so make it slightly more saucy than you think you want it. -
Serve immediately: Serve in warm bowls. For a crispy-top version: transfer to a baking dish, top with breadcrumbs and extra cheese, and grill for 3–5 minutes until golden and bubbling.
Tip: Straight from the stove is creamy perfection. From under the grill is crispy-topped heaven. Both are correct.
Pro Tips
- Grate your own cheese from a block. Pre-shredded bags are coated in anti-caking starch that prevents smooth melting. This is the #1 reason homemade mac and cheese turns out grainy.
- Sharp/mature cheddar melts better and has more flavour than mild. A mix of cheddar and Gruyère gives the most complex, restaurant-quality result.
- Add-in ideas: crispy bacon, truffle oil, roasted garlic, sautéed mushrooms, or fresh herbs (chives, thyme).
Frequently Asked Questions
Why is my cheese sauce grainy?
Two possible causes: (1) the cheese was added over direct heat (always remove from heat first), or (2) you used pre-shredded cheese from a bag (the anti-caking coating prevents smooth melting). Grate from a block and add off-heat.
Can I make mac and cheese ahead of time?
Yes. Make the full recipe, transfer to a baking dish, cover, and refrigerate. To reheat: add a splash of milk, cover with foil, and bake at 175°C for 20 minutes. Uncover, add breadcrumbs and cheese on top, and grill for 5 minutes.
What pasta shape is best for mac and cheese?
Any shape with curves, ridges, or tubes that trap the sauce: elbow macaroni (classic), shells, cavatappi, or rigatoni. Smooth pasta like spaghetti lets the sauce slide off.
Get step-by-step guidance with AI photo feedback on Kitchen's Witch. Paste any recipe video and we'll guide you through cooking it — or browse our recipe collection.