Chef John's Macaroni and Cheese Recipe: Bistro-Style Crisp-Top Cheese Swirls

Salads

Chef John's Macaroni and Cheese Recipe: Bistro-Style Crisp-Top Cheese Swirls

Chef John's macaroni and cheese recipe delivers bistro-style perfection with crisp-top cheese swirls that separate it from standard versions. The secret lies in a precise roux technique and slow-cooked cheese sauce that develops deep, nutty flavor without breaking.

I've tested countless variations, and this method consistently produces results that rival my favorite restaurant dishes. What sets it apart is the balance between creamy sauce and golden, crispy cheese crust—something home cooks often struggle to achieve.

This recipe starts with al dente pasta cooked in salted water, then tossed with a velvety cheese sauce made from sharp cheddar, Gruyère, and a touch of cream. The sauce is thickened properly to cling to every noodle while maintaining a silky texture.

Unlike many recipes that rely on processed cheese powder, this version uses real cheeses for authentic depth of flavor. The baking step transforms the top into a golden, crispy swirl that adds texture contrast to each bite.

What you'll end up with is a dish that's rich, indulgent, and perfectly balanced—creamy sauce with crispy cheese swirls on top. The aroma alone will have everyone gathering around your table, and the first bite delivers that satisfying combination of textures and flavors.

This isn't just mac and cheese; it's a restaurant-quality comfort food that's surprisingly simple to make at home.

The best part? This recipe scales beautifully for gatherings while still working perfectly for a weeknight dinner. Serve it as a main dish with a side salad or roasted vegetables, or transform it into a hearty casserole by adding cooked chicken or bacon.

Here's how to make it exactly like Chef John does in his professional kitchen.

👨‍🍳
Difficulty
Medium
🔥
Calories
Med Cal

Ingredients for chef john's macaroni and cheese

Bistro-quality mac and cheese starts with these twelve essential ingredients—each playing a key role in the creamy sauce and crispy swirls.

Ingredient Amount Notes
Elbow Macaroni 🍝 12 oz Al dente pasta preferred
Unsalted Butter 🧈 ½ cup Cold, cut into small cubes
All-Purpose Flour 🌾 ¼ cup Sifted for smooth roux
Sharp White Cheddar Cheese 🧀 2 cups Shredded, block preferred
Gruyère Cheese 🧀 1 cup Shredded, aged 12+ months
Heavy Cream 🥛 ½ cup Full-fat for richness
Whole Milk 🥛 ½ cup Warmed for smooth sauce
Yellow Mustard 🍯 1 tbsp Dijon preferred for tang
Kosher Salt 🧂 1 tsp Plus extra for pasta water
Ground Black Pepper 🌶️ ½ tsp Freshly ground preferred
Nutmeg 🌿 ¼ tsp Freshly grated for warmth
Breadcrumbs 🍞 ¼ cup Panko for extra crunch
Garlic Powder 🧄 ½ tsp For subtle depth

The cheeses make all the difference. Gruyère brings that nutty depth while sharp white cheddar adds tang—both should be freshly shredded from blocks, not pre-grated. Whole Foods or specialty cheese shops carry the best aged Gruyère, but the regular dairy aisle works for cheddar. For the roux, cold butter and sifted flour are non-negotiable—this isn't a shortcut dish. I like King Arthur flour for its protein content, which helps thicken the sauce properly. The breadcrumbs? Panko gives that perfect crunch without getting soggy during baking.

No Gruyère? Comté or aged Gouda work in a pinch, though the flavor will differ slightly. Pre-grated cheese gets clumpy—trust me, it's worth the extra minute to shred yourself. Running low on heavy cream? Half-and-half plus a splash of milk keeps the sauce rich. The mustard adds subtle tang—if you prefer something milder, reduce to 0.5 tbsp. For the nutmeg, pre-ground is fine, but fresh grated has more aroma. The garlic powder here is just for depth; don't skip it, but don't overdo it either—we're not making garlic mac and cheese.

This sauce reheats beautifully—just add a splash of milk to loosen it. The baked version keeps for 4-5 days in the fridge, though it's best enjoyed within 2 days for that perfect crisp. For make-ahead, assemble the dish, refrigerate, then bake straight from cold—add 10-15 minutes to the baking time. The breadcrumb topping can be prepped a day ahead; just store it separately until ready to use. Freezing isn't recommended as the texture changes, but you can freeze the sauce separately for up to 3 months—just add it to freshly cooked pasta when reheating.

❤️

Why You'll Love This Recipe

  • No-Fuss Roux Magic: I swear by that simple butter-flour roux—just 3 minutes on medium heat, no stress. The Gruyère melts into it like silk, and the sharp cheddar adds that cheese pull you can’t resist. Honestly, I’ve made this while waiting for dinner guests to arrive.
  • Cheese Pull Perfection: That crispy, golden top with the creamy center? Chef John’s trick—baking it just until the edges toast. The Gruyère’s nutty depth and cheddar’s tang hit every bite, and the elbow macaroni soaks up the sauce like a dream. (Yes, even on a Tuesday night.)
  • Weeknight Workhorse: Double the batch and freeze half—it reheats beautifully for lazy mornings or last-minute lunches. My kids grab it straight from the fridge, and it’s still the star of potlucks. No one ever questions the leftovers.
  • Budget-Friendly Luxe: Four ingredients, one pantry staple (flour), and cheeses that stretch further than store-bought boxes. I’ve fed six people for under $10, and they’d never guess it wasn’t a restaurant dish. The secret? Gruyère’s richness makes it feel fancy, not cheap.

Step-by-step instructions for Chef John's macaroni and cheese

Here's how to create bistro-style macaroni and cheese with crisp-top cheese swirls.

1

Cook the Elbow Macaroni to Al Dente Perfection

Bring a large pot of water to a rolling boil and add 12 oz elbow macaroni. Stir immediately to prevent sticking. Season the water generously with salt—it should taste like the ocean. Cook the pasta for 10-11 minutes until it's al dente, meaning it's tender but still has a slight bite. Test by tasting a piece or using the "float test"—when pasta floats, it's usually done.

Drain the pasta in a colander but don't rinse it. The starch on the pasta helps create a creamier sauce later. Transfer the drained pasta to a large bowl and set it aside. I like to keep the pasta warm while I prepare the cheese sauce, so I toss it gently with a bit of the cooking water to prevent drying out.

2

Prepare the Cheese Sauce with a Smooth Roux

In a separate large saucepan, melt 0.5 cup unsalted butter over medium heat. Once the butter is fully melted and foaming, add 0.25 cup all-purpose flour all at once. Whisk constantly for 2-3 minutes until the mixture forms a smooth, pale roux. The roux should look like wet sand and coat the back of a spoon.

Gradually pour in 0.5 cup whole milk and 0.5 cup heavy cream while whisking continuously. Cook the mixture for another 2-3 minutes until it thickens and begins to bubble. At this point, remove the pan from heat and stir in 1 tbsp yellow mustard, 0.5 tsp garlic powder, 0.25 tsp nutmeg, 0.5 tsp ground black pepper, 1 tsp kosher salt, 2 cups sharp white cheddar cheese, and 1 cup gruyère cheese. Stir until the cheese is completely melted and smooth.

3

Combine Pasta and Sauce for Creamy Perfection

Add the cooked elbow macaroni to the cheese sauce and stir gently to combine. The sauce should coat the pasta evenly, creating a creamy, velvety texture. If the sauce is too thick, add a splash of warm milk or pasta water to reach your desired consistency. I like to taste the mixture at this stage to ensure the seasoning is balanced—adjust with more salt, pepper, or nutmeg if needed.

Return the pan to low heat and let the mixture simmer for 3-5 minutes, stirring occasionally. This step ensures all the flavors meld together and the pasta absorbs the rich cheese sauce. The result should be a luscious, creamy macaroni and cheese with a smooth texture and a perfect balance of cheesy goodness.

4

Create the Signature Crisp-Top Cheese Swirls

Transfer the macaroni and cheese to a greased 9x13-inch baking dish. Spread it evenly with a spatula, creating a smooth, flat surface. In a small bowl, mix 0.25 cup breadcrumbs with 1 tbsp melted butter until well combined. Sprinkle this mixture evenly over the top of the macaroni and cheese, pressing down gently to ensure it sticks.

Bake in a preheated 375°F oven for 15-20 minutes until the top is golden brown and crispy. Watch it closely—you want the breadcrumbs to toast beautifully while the cheese underneath stays creamy. Once the top is perfectly crisp, remove the dish from the oven and let it rest for 5 minutes before serving. This resting period helps the cheese set slightly, making it easier to slice and serve.

5

Serve with Style for a Bistro Experience

Use a sharp knife to cut the macaroni and cheese into squares or rectangles, ensuring each serving has that crispy, golden top. Serve immediately while the cheese is still creamy and the breadcrumb topping is at its crispest. Pair with a simple green salad and crusty bread for a complete bistro-style meal.

This dish is all about the contrast—creamy, rich cheese sauce with a crispy, buttery top. The combination of sharp cheddar and nutty gruyère adds depth, while the breadcrumb topping provides a satisfying crunch. Enjoy your homemade macaroni and cheese that rivals any bistro dish!

👨‍🍳

Pro Tips For Making Chef John'S Macaroni And Cheese

  • Bloom the flour first: Whisk the flour and butter together for 30 seconds before adding liquid—this removes raw flour taste and creates a smoother sauce. I used to skip it, and the final cheese sauce always had that faint floury aftertaste.
  • Shred cheese aggressively: Use a box grater for the cheddar and Gruyère—pre-shredded cheese has anti-caking agents that make the sauce grainy. If you’re in a pinch, pulse frozen cheese blocks in a food processor for 5 seconds, but don’t overdo it.
  • Don’t overcook the pasta: Pull the elbows out when they’re just al dente—1 minute before package time—and reserve ½ cup of starchy pasta water. Overcooked noodles turn mushy in the sauce, and you’ll regret it when the texture goes to hell.
  • Temper the cheese sauce: Lower the heat to medium-low once the sauce thickens, then whisk in the shredded cheese in two batches. Adding it all at once can cause clumping—trust me, I’ve turned this into a science experiment.

Dietary considerations for this recipe

Gluten-Free Adaptation

For a gluten-free version, swap the elbow macaroni for gluten-free pasta like Barilla or Jovial—both hold up well in creamy sauces. I recommend gluten-free penne or gluten-free rotini for better texture retention.

Cook the pasta in well-salted water for 1-2 minutes less than package instructions since gluten-free pasta tends to cook faster. 🥄

Dairy-Free Substitutions

Replace the butter with olive oil or dairy-free margarine (like Earth Balance) for the roux. Use dairy-free milk (almond or oat) and dairy-free cream> (like Silk) in equal parts.

For cheese, nutritional yeast> adds a cheesy flavor, or try dairy-free cheddar shreds> (like Violife). The texture will be slightly different but still delicious. 🧀

Lower-Calorie Options

Cut calories by using whole wheat pasta> (like Barilla) and low-fat milk> instead of heavy cream. Reduce butter to 0.25 cup> and use 1 cup shredded part-skim mozzarella> instead of Gruyère.

For the breadcrumb topping, mix 0.25 cup crushed cornflakes> with 1 tbsp melted butter>—it's lighter but still crispy. 💪

Vegan-Friendly Version

For a fully vegan mac and cheese, use cashew cream> (blend 1 cup soaked cashews> with 1 cup water>) as the base. Replace cheeses with 1 cup vegan cheddar shreds> (like Daiya) and 1 tbsp nutritional yeast> for depth.

The roux should be made with olive oil> instead of butter. Bake with vegan breadcrumbs> (like panko made from gluten-free flour).

Kid-Friendly Adjustments

Make it extra kid-approved by adding ½ cup cooked diced ham> or ½ cup finely chopped broccoli> to the pasta. Use mild cheddar> instead of Gruyère for a milder flavor.

For picky eaters, top with crushed potato chips> (like Ruffles) instead of breadcrumbs—they love the crunch! 🍽️

Nutrition facts

Servings 4
Amount Per Serving
Calories 580kcal
% Daily Value *
Total Fat 38g49%
Saturated Fat 24g120%
Cholesterol 185mg62%
Sodium 950mg41%
Total Carbohydrate 38g14%
Dietary Fiber 2g8%
Sugars 5g
Protein 28g56%
* Percent Daily Values are based on a 2,000 calorie diet. Your daily values may be higher or lower depending on your calorie needs.

Frequently asked questions

1

Can I make this mac and cheese without baking it?

For a stovetop version, simply combine the cooked pasta and cheese sauce in a pot, then stir in 2 tbsp butter and 2 tbsp flour to thicken. Add 1 cup milk gradually while stirring until smooth. Keep warm on low heat and serve immediately with a sprinkle of breadcrumbs on top. The texture will be creamy throughout without the crispy crust.

2

Why did my cheese sauce turn grainy?

Grainy sauce usually means the cheese melted too quickly or the heat was too high. Always remove the pan from heat before adding cheese, and stir constantly until fully melted. For extra smoothness, use freshly shredded cheese (not pre-grated) and add a splash of warm milk if needed. Also, make sure your cheeses are at room temperature before adding them.

3

Can I use a different type of pasta?

Elbow macaroni is ideal for this recipe because its shape holds the sauce well, but you can substitute with other short pasta shapes like penne, farfalle, or shells. Avoid long pasta like spaghetti or linguine, as it won't work as well with the creamy sauce. If using shells, reduce the baking time by 2-3 minutes since they cook faster.

4

How do I prevent the breadcrumb topping from getting soggy?

Press the breadcrumb mixture firmly onto the cheese sauce before baking to create a barrier. For extra crispiness, bake at 400°F instead of 375°F for the last 2-3 minutes of baking. Also, let the dish rest for 5 minutes after baking before cutting—this helps the cheese set and keeps the topping crisp.

5

What's the secret to getting that perfect crispy cheese swirl on top?

The swirl comes from using a mix of breadcrumbs and melted butter, then pressing it down firmly before baking. For extra drama, use a spoon to create small ridges in the cheese sauce before adding the topping. Bake until golden brown, then use a kitchen torch to crisp the edges if you have one. The key is patience—don't overbake or the cheese will turn rubbery.

★★★★★4.6(3 reviews)
Categories Salads