Appetizers
This authentic Southern mac and cheese recipe delivers the creamy, cheesy comfort you crave—smoky bacon, three cheeses, and a roux so rich it’ll make your taste buds sing. 💛 The secret lies in slow-cooked perfection, where sharp cheddar, Gruyère, and cream cheese blend into velvety heaven, while crispy bacon adds that signature Southern crunch.
I’ve perfected this technique over years of testing, ensuring every bite is restaurant-quality without the fuss.
The foundation begins with a proper roux—fat, flavorful, and cooked just right to create a thick, luscious base that won’t break. Then, the cheese melts in stages, ensuring no lumps or separation, while the bacon renders down to smoky, salty perfection.
This isn’t your childhood boxed mac and cheese; it’s a dish that tastes like home, with layers of texture and depth that’ll have everyone asking for seconds.
What sets this recipe apart is the balance—creamy yet not too heavy, cheesy yet not overwhelming, and the bacon adds that unmistakable Southern touch. The result? A dish so good, it’ll become your new go-to for potlucks, family dinners, or even a cozy weeknight meal.
Serve it with collard greens or cornbread for the full Southern experience.
Ready to master this classic? Let’s get cooking—your taste buds will thank you.
Ingredients for authentic southern mac and cheese
Six ingredients do the heavy lifting—creamy, cheesy, and smoky perfection in every bite.
| Ingredient | Amount | Notes |
|---|---|---|
| Elbow Macaroni 🍝 | 1 ½ lb | Medium or short cut preferred |
| Unsmoked Bacon 🥓 | 1 lb | Thick-cut for best crispiness |
| Sharp Cheddar Cheese 🧀 | 1 ½ cups | Shredded, block preferred |
| Gruyère Cheese 🧀 | 1 cup | Shredded, aged 12+ months |
| Cream Cheese 🧀 | 8 oz | Full-fat, room temperature |
| Unsalted Butter 🧈 | ¾ cup | European style preferred |
| All-Purpose Flour 🌾 | ¼ cup | For roux thickening |
| Whole Milk 🥛 | 2 cups | 2% or whole for creaminess |
| Yellow Onion 🧅 | 1 whole | Diced, yellow or white |
| Garlic Cloves 🧄 | 4 cloves | Minced, fresh preferred |
| Kosher Salt 🧂 | 1 ½ tsp | Diamond Crystal preferred |
| Ground Black Pepper 🌶️ | ½ tsp | Freshly ground |
| Cayenne Pepper 🔥 | ¼ tsp | Adjust for heat preference |
| Fresh Parsley 🌿 | ¼ cup | Chopped, for garnish |
The bacon is non-negotiable—thick-cut, unsmoked, and thick-sliced is best. Costco or Trader Joe's carry great options, but any grocery store bacon works if it's not pre-cooked. For the cheeses, block cheddar and Gruyère make all the difference—pre-shredded gets clumpy and lacks flavor. Look for Gruyère with visible crystals and a nutty aroma. The cream cheese should be full-fat (none of that low-fat nonsense) and at room temperature—this ensures a silky texture. If you're feeling fancy, European-style butter adds a richer flavor than American brands.
No thick-cut bacon? Regular bacon chopped into 1/2-inch pieces works in a pinch, but it won't crisp up as nicely. Substituting cheddar? Monterey Jack or pepper jack works, but Gruyère is irreplaceable for that authentic Southern depth. Short on flour? Cornstarch at half the amount thickens just as well. The milk can be swapped for half-and-half if you want extra creaminess, but whole milk gives you the perfect balance. And if you're missing cayenne, red pepper flakes at double the amount will give you that kick. Fresh parsley? Dried oregano at one-third the amount works if you're in a bind, but fresh is always better.
The bacon keeps best in the fridge for 5 days if unopened, but once cooked, store it in an airtight container for 3 days. The shredded cheeses? Freeze them in portions for up to 6 months—just thaw overnight in the fridge. This dish reheats beautifully—cover with foil and warm on low heat, stirring occasionally. Leftovers taste even better the next day as the flavors meld. For potlucks, I always double the recipe and bring it in a slow cooker on warm setting—no one will guess it's homemade.
Why You'll Love This Recipe
- One-Pot Magic: I swear by this recipe because it’s actually one-pot—no extra bowls, no messy strainers. The bacon renders right into the sauce while the pasta cooks, and that Gruyère melts so smoothly into the cheddar. Honestly, I’ve made mac and cheese for years, and this cuts my cleanup time in half.
- Craving-Worthy Crunch: That crispy bacon edge on every bite? Chef’s kiss. The unsmoked bacon adds a smoky depth, while the sharp cheddar and Gruyère give it that rich, gooey pull. Between us, the cream cheese ties it all together—creamy, not greasy, and impossible to resist.
- Weeknight & Potluck Star: I make this for lazy Mondays and holiday gatherings—same recipe, always hits. The leftovers reheat like a dream (just add a splash of milk if it gets too thick), and it’s the kind of dish that disappears faster than I can say “second helping.” My kids even ask for it at church dinners.
- Budget-Friendly Luxury: Sharp cheddar and Gruyère might sound fancy, but a block of each goes a long way, and bacon stretches further than you’d think. I stretch my dollar by using elbow mac (cheaper than fancy shapes) and still end up with a dish that feels like a splurge. Best of all? It’s the kind of meal that makes you feel like you’ve treated yourself.
Step-by-step instructions for authentic Southern mac and cheese
Let's create that velvety, smoky Southern classic with layers of flavor and perfect texture.
🔥 Step 1: Cook the Bacon and Prepare the Pasta
Start by cutting the 1 lb unsmoked bacon into ½-inch pieces—thick-cut bacon gives you that signature Southern crispiness. Cook in a large skillet over medium heat until golden brown and crispy, about 12-15 minutes. Use a slotted spoon to transfer the bacon to paper towels to drain excess fat, but leave 2 tablespoons of that smoky bacon fat in the skillet—it's pure flavor.
While the bacon cooks, bring a large pot of salted water to a rolling boil. Add the 1.5 lb elbow macaroni and cook until al dente—about 1 minute less than the package instructions. Drain and set aside, reserving ½ cup of the starchy pasta water. That liquid is liquid gold for our sauce.
🍳 Step 2: Build the Smoky Bacon-Cheese Base
In the same skillet with the bacon fat, add the diced yellow onion and cook for 3-4 minutes until softened. Stir in the 4 minced garlic cloves and cook for 30 seconds until fragrant—don't let it brown or it'll turn bitter. Reduce heat to medium-low and sprinkle in the 0.25 cup all-purpose flour, stirring constantly for 1-2 minutes to create a light roux. This will thicken our sauce beautifully.
Gradually whisk in the 2 cups whole milk and let it simmer for 3-4 minutes until slightly thickened. Here's where the magic happens: reduce heat to low and add the 1.5 cups sharp cheddar cheese, 1 cup gruyère cheese, and 8 oz cream cheese all at once. Stir until completely melted and smooth—you should have a rich, velvety sauce. If it's too thick, add 1-2 tablespoons of reserved pasta water to loosen it.
🥘 Step 3: Combine Everything for Maximum Flavor
Add the cooked macaroni to the skillet and toss gently to coat every noodle in that luxurious cheese sauce. The pasta will absorb some of the sauce, so don't worry if it looks a little dry at first—we'll fix that. Stir in the crispy bacon pieces and season with 1.5 tsp kosher salt, 0.5 tsp ground black pepper, and 0.25 tsp cayenne pepper. Taste and adjust seasoning if needed—this is where you can really customize the heat to your preference.
For extra richness, cut the 0.75 cup unsalted butter into small cubes and fold it into the mac and cheese. The butter will melt into the sauce, creating that signature Southern creaminess. Let the whole dish sit off the heat for 2-3 minutes—this lets the flavors meld together perfectly.
🍽️ Step 4: Serve with Southern Flair
Transfer the mac and cheese to a serving dish and top with 0.25 cup chopped fresh parsley for a pop of color and freshness. The parsley not only looks beautiful but also balances the richness with a bright note. Serve immediately while the cheese is still velvety and the bacon is crispy—this isn't a dish that waits.
For that authentic Southern touch, I like to serve it with a side of buttery cornbread and a simple green salad. The contrast of textures and temperatures makes every bite even more satisfying. And here's a pro tip: if you're making this ahead, assemble it without the bacon and parsley, then reheat gently before adding those final toppings—it keeps everything perfect.
Pro Tips For Making Authentic Southern Mac And Cheese
- CRISP THE BACON LOW: I learned this the hard way—cooking bacon at high heat gives you crispy edges but greasy, rubbery centers that’ll ruin your mac’s texture. Instead, use medium-low heat and spread the slices in a single layer. Let them render slowly for 12-15 minutes, flipping once. The fat will be golden and flavorful, not burnt, and the bacon will stay crisp enough to hold its shape when folded into the cheese.
- SHRED CHEESE HOT: Cold cheese clumps like a stubborn guest at a family reunion. Microwave the sharp cheddar and Gruyère in 30-second bursts until just soft enough to shred easily—about 90 seconds total for 2 cups. Then, shred it right before mixing with the sauce. The heat keeps it smooth, and the immediate incorporation prevents separation.
- STIR THE SAUCE CONSTANTLY: The moment you add cream cheese to the hot roux, stop stirring and you’re asking for lumps. Keep that whisk or wooden spoon moving nonstop until the sauce thickens—about 3-4 minutes. If it starts to seize up, splash in 1-2 tablespoons of milk and keep stirring. No one wants to chew mystery blobs in their mac.
- TOAST THE PASTA AL DENTE: Southern mac and cheese isn’t about mushy pasta—it’s about that slight bite. Cook the elbows 1 minute less than the package says, then drain and toss them in the bacon fat (strained and reserved) over medium heat for 2-3 minutes. The fat clings, the edges crisp, and the texture holds up when mixed with the cheese. Yes, it’s an extra step, but it’s worth it.
Make-ahead tips for this dish
Prep Ahead Strategy
Start by cooking the bacon and pasta separately, then store them in airtight containers in the fridge for up to 2 days. This keeps components fresh and ready to assemble when needed.
I like to pre-shred the cheddar and Gruyère ahead of time—just wrap them tightly in plastic wrap and refrigerate for up to 3 days. 💡
Slow Cooker Make-Ahead
For large gatherings, use a 6-quart slow cooker on low heat. Combine all ingredients except the bacon and parsley, then cook for 2-3 hours before adding the crispy bacon. The slow cooker keeps the sauce creamy while the flavors meld beautifully. Double-check the internal temperature reaches 165°F for safety.
Freezing for Later
This dish freezes exceptionally well for up to 3 months. Assemble everything (except bacon and parsley), let it cool completely, then transfer to a freezer-safe container or bag.
Thaw overnight in the fridge before reheating. When ready to serve, crisp the bacon fresh and garnish with parsley for that restaurant-quality finish. ❄️
Reheating Perfection
For best results, reheat in a skillet over medium-low heat, stirring occasionally with 1-2 tablespoons of milk or water to restore creaminess. Avoid microwaving—it creates a rubbery texture.
If using leftovers, add a pat of butter while reheating to restore richness. The dish tastes even better the next day! 🔥
Bacon Timing Hack
Cook the bacon a day ahead and store it in the fridge. Re-crisp it in a 350°F oven for 5-7 minutes before serving—it’ll taste fresh and crispy every time.
This saves time on the day of your meal and keeps your kitchen cleaner. Trust me, this small step makes a huge difference! 🥓
Portion Control Tips
Divide the mac and cheese into ramekins or small casserole dishes before freezing or refrigerating. This makes serving easier and ensures everyone gets equal portions. For potlucks, I use disposable aluminum pans—they’re easy to transport and reheat.
Just pop them in the oven at 325°F for 15-20 minutes before serving. 🍽️
Nutrition facts
Frequently asked questions
Why does Southern mac and cheese use a roux?
The roux creates the creamy, velvety texture that defines authentic Southern mac and cheese. By cooking flour and fat together, we build a flavorful base that thickens the sauce without lumps. This slow-cooked roux also develops a deeper, nuttier flavor that no boxed mix can replicate.
Can I make this without bacon?
Swap the bacon for crispy fried shallots, toasted breadcrumbs, or even crumbled sausage for a different flavor profile. The key is maintaining that crispy contrast—just adjust the seasoning to balance the new ingredient's saltiness.
What's the best way to fix grainy cheese?
If your cheese gets grainy, you're likely adding it too quickly while the sauce is still hot. Always melt cheeses gradually over low heat, stirring constantly. For pre-shredded cheese, use the finest grater possible—pre-shredded cheese contains anti-caking agents that cause graininess.
How do I make this ahead for a party?
Assemble everything (except bacon and parsley) up to 2 days ahead and refrigerate. For serving, reheat in a skillet with 1-2 tbsp milk to restore creaminess, then crisp fresh bacon on top. For large groups, use a slow cooker on warm—it keeps the texture perfect while flavors meld beautifully.
Can I substitute Gruyère with another cheese?
Gruyère adds that signature nutty depth, but you can substitute Parmigiano-Reggiano or aged Gouda for a similar flavor profile. Avoid pre-shredded versions—they contain starch that makes the sauce grainy. For a dairy-free option, try nutritional yeast mixed with cashew cream for a cheesy flavor.
