
Welcome to the ultimate guide for crafting the best homemade mac and cheese you’ll ever taste! Macaroni and cheese is undeniably one of life’s greatest culinary comforts, a beloved classic that transcends age and palate. It’s the quintessential dish for cozy evenings, celebratory meals, or simply satisfying that deep craving for something truly delicious and heartwarming. Forget those boxed versions; making mac and cheese from scratch allows for unparalleled creaminess, flavor depth, and a truly satisfying texture that will have everyone asking for seconds. In this comprehensive guide, we’ll walk you through everything you need to know to master the art of this iconic comfort food.
I’ve dedicated countless hours to perfecting my mac and cheese recipe, meticulously testing dozens of cheese combinations to find the absolute sweet spot that appeals to both discerning adults and picky eaters alike. My secret blend features the robust, sharp flavor of extra sharp cheddar, the incredible melt and subtle tang of Monterey Jack, and a touch of cream cheese for an irresistibly smooth and velvety texture. This proven combination consistently delivers a satisfyingly rich, perfectly cheesy, and wonderfully smooth sauce every time. It’s the same winning formula I rely on in my other popular recipes like baked mac and cheese and cauliflower mac and cheese because it simply never disappoints!
Featured Comment
“First mac and cheese recipe that my whole family loved! Will definitely be making this often! ~Amie”
Essential Ingredients for Perfect Mac and Cheese (and Smart Substitutions)
Creating an extraordinary homemade mac and cheese starts with understanding your core ingredients. While the concept is simple, the quality and type of each component significantly impact the final dish.
Choosing the Right Pasta for Mac and Cheese
While elbow macaroni is the undisputed classic and proudly featured in the dish’s name, don’t feel limited! The beauty of mac and cheese lies in its adaptability. For a fun twist or simply to use what you have on hand, consider other pasta shapes that excel at cradling that luscious cheese sauce. Excellent alternatives include pasta shells (conchiglie), bowties (farfalle), corkscrew pasta (fusilli), cavatappi, and penne. The key is to select a pasta with nooks, ridges, or an open shape that can effectively capture and hold onto every drop of the creamy sauce. Avoid very thin or delicate pastas that might get lost or overcook easily. Always cook your pasta al dente, as it will continue to soften slightly when mixed with the hot cheese sauce.
Understanding Milk Options for a Creamy Sauce
Milk forms the foundational liquid for our cheese sauce, and its fat content plays a crucial role in the final texture and richness. I typically opt for either whole milk or 2% milk. Whole milk delivers the richest, most decadent, and creamiest consistency, ideal for a truly indulgent mac and cheese. If you prefer a slightly lighter sauce without sacrificing too much creaminess, 2% milk is an excellent choice. While skim milk can be used, it will result in a much thinner sauce lacking the desired body and mouthfeel. For an even more luxurious touch, you can substitute a portion of the milk with half-and-half or even heavy cream, though this will significantly increase the richness.
Seasoning Your Mac and Cheese to Perfection
Don’t underestimate the power of simple seasoning. While salt and pepper are non-negotiables, a few extra spices can elevate your cheese sauce from good to unforgettable. I always include a touch of paprika, which adds a subtle smoky depth and a beautiful warm color without overpowering the cheese. Beyond that, consider incorporating a pinch of garlic powder or onion powder for an aromatic boost. A tiny hint of dry mustard powder (or a teaspoon of Dijon mustard) can miraculously enhance the cheesiness without making the sauce taste like mustard. And for those who enjoy a little kick, a whisper of cayenne pepper can add a fantastic, warming undertone. The most important tip for seasoning any sauce is to **taste as you go**. Adjust salt and pepper incrementally until the flavor profile is perfectly balanced to your liking.
Mastering Cheese Selection for the Ultimate Mac and Cheese
The cheese is, of course, the star of the show! Choosing the right cheeses is paramount for achieving a smooth, creamy, and flavorful sauce. When selecting your cheeses, prioritize two main characteristics: how well it melts and its flavor profile.
- For Sharper, Stronger Flavors: If you crave a bolder, more intense cheesy experience, lean towards sharp or extra-sharp cheeses. However, it’s crucial to remember a general rule: the harder the cheese, the lower its moisture content and often, the higher its melting point, making it less ideal as the sole base cheese. Hard, aged cheeses like Parmesan, Pecorino Romano, or aged Gouda offer incredible flavor but tend to melt stringy or gritty if used as the primary cheese. They are best utilized as a flavor booster, perhaps grated finely and stirred in with other meltier cheeses, or as a topping.
- For the Smoothest Melt: To achieve that iconic, silky-smooth cheese sauce, focus on cheeses known for their excellent melting properties. These typically include medium-firm cheeses with a good balance of fat and moisture. Cheddar (mild, medium, or sharp), Monterey Jack, Colby Jack, and even a good quality Mozzarella are fantastic choices. These cheeses melt beautifully without becoming oily or clumpy, creating a luxurious base for your sauce.
- My Tried-and-True Favorite Cheese Combination: For an unbeatable blend of flavor and texture in this easy stovetop mac and cheese, my top recommendation is a mix of extra sharp cheddar, Monterey Jack cheese, and a touch of cream cheese. The extra sharp cheddar delivers that essential tangy, robust “mac and cheese” flavor. Monterey Jack brings incredible meltability and a mild, buttery richness that harmonizes perfectly. Finally, a small amount of cream cheese is the secret weapon for an unbelievably smooth, glossy, and extra-creamy sauce that coats every noodle flawlessly. This combination provides both depth of flavor and a dreamily consistent texture.
Expert Tips for No-Fail Homemade Mac and Cheese
Making mac and cheese from scratch is straightforward, but a few key techniques can ensure your dish is always perfect, smooth, and never grainy or separated. Follow these tips for a consistently flawless result.
Always Grate Your Own Cheese from a Block
This is perhaps the single most important tip for superior cheese sauce. While pre-shredded cheese seems convenient, it often contains additives like cellulose, potato starch, or other anti-caking agents to prevent clumping in the bag. These additives, while harmless, inhibit the cheese from melting smoothly, often leading to a grainy or clumpy sauce. By purchasing a high-quality block of cheese and grating it yourself, you ensure a pure product that melts into a wonderfully smooth, uniform sauce. The difference in texture and flavor is truly remarkable.
Master the Roux for a Velvety Sauce
The foundation of a smooth, lump-free cheese sauce is a properly made roux. A roux is a simple mixture of equal parts fat (typically butter) and flour, cooked together. It acts as a thickening agent and also prevents a raw flour taste in your sauce. To achieve the best results, melt your butter in a pot, then whisk in the flour until a smooth paste forms. Cook this paste for 1-2 minutes, stirring constantly, to cook out the raw flour taste. Then, slowly pour in the milk while continuously whisking. This gradual addition and constant stirring are crucial to prevent lumps and ensure the flour integrates evenly into the liquid, leading to a perfectly smooth béchamel base for your cheese sauce.
Avoid a Grainy Cheese Sauce
A grainy cheese sauce is a common complaint, and it’s usually due to one of two reasons: the flour not being fully cooked or the cheese being added too early or overcooked. Ensure your roux cooks for at least a minute or two to eliminate the starchy flavor. After adding the milk, allow it to heat through completely and thicken for several minutes over medium heat, stirring often, before introducing the cheese. The milk needs to reach a certain temperature to activate the thickening power of the roux. Adding cheese to cold or insufficiently heated milk can shock the cheese and prevent it from melting properly, resulting in a grainy texture.
Never Let Your Cheese Sauce Boil!
This tip is critical for a smooth, unseparated sauce. Never allow your cheese sauce or mac and cheese to boil vigorously. High heat can cause the proteins in the cheese to seize up and the fats to separate, leading to an oily, broken sauce. Always cook your cheese sauce over medium to medium-low heat. This gentle heat allows the milk to warm gradually and the cheese to melt slowly and evenly. Once the cheese is fully melted and the sauce is smooth, immediately remove it from the heat or reduce it to the lowest setting. After adding the cooked pasta, you only need to cook for an additional couple of minutes to gently heat the pasta through and ensure it’s thoroughly coated, not to cook the sauce further.
Don’t Overcook Your Mac and Cheese
Following on from the previous point, overcooking is a primary culprit behind separated, oily, or grainy mac and cheese. The moment your cheese is fully melted and your sauce is beautifully smooth and creamy, it’s ready. Add your pasta, stir to combine, and heat gently for just a minute or two to ensure everything is warm. Prolonged cooking at high temperatures, even after the cheese has melted, will cause the fat to render out of the cheese, resulting in a greasy, unappetizing sauce. As soon as the pasta is heated through, take the pot off the heat and serve immediately for the best texture and flavor.
Step-by-Step Guide to Making Your Best Mac and Cheese
Follow these simple steps to create a rich, creamy, and irresistible homemade mac and cheese that will become a staple in your recipe rotation.

- Cook the Pasta: Bring a large pot of generously salted water to a rolling boil. Add your elbow macaroni (or chosen pasta shape) and cook according to the package instructions until al dente. Drain the pasta completely and set it aside.
- Prepare Your Cheeses: While the pasta is cooking, grate all your block cheeses (extra sharp cheddar, Monterey Jack) and cut the cream cheese into small cubes. This ensures a quick and even melt once added to the sauce.
- Start the Cheese Sauce: In a large, heavy-bottomed pot or Dutch oven, melt the unsalted butter over medium heat.
- Make the Roux: Once the butter is fully melted, whisk in the all-purpose flour until a smooth paste (roux) forms. Cook, stirring constantly, for about 1-2 minutes to cook out the raw flour taste.
- Add the Milk: Gradually pour in the milk (whole or 2%), a little at a time, while continuously whisking to prevent lumps. Continue whisking slowly until all the milk is incorporated and the sauce begins to thicken slightly. Let the milk mixture heat through for several minutes, stirring occasionally, until it reaches a gentle simmer and coats the back of a spoon.
- Incorporate Cream Cheese: Add the small pieces of cream cheese to the pot. Stir gently until the cream cheese fully melts and blends seamlessly into the sauce, contributing to its luxurious creaminess.
- Melt the Shredded Cheeses: Begin adding the grated cheddar and Monterey Jack cheeses, a handful at a time. Stir continuously after each addition, allowing the cheese to melt completely before adding more. This gradual process helps maintain a smooth sauce and prevents the cheese from clumping or separating.
- Season the Sauce: Season the cheese sauce with smoked paprika, salt, and fresh cracked black pepper. Taste and adjust seasonings as needed, adding more salt or pepper if desired.
- Combine with Pasta: Once all the cheese is melted and the sauce is perfectly smooth and velvety, add the drained macaroni to the pot. Stir gently until every piece of pasta is thoroughly coated in the rich cheese sauce.
- Heat Through and Serve: Let the mac and cheese cook on medium-low heat for just a couple of minutes, stirring gently, simply to heat the pasta through. Avoid boiling or prolonged cooking at this stage. Remove from heat and serve immediately for the ultimate creamy experience.




How to Make Homemade Mac and Cheese Gluten-Free
Adapting this classic comfort food for a gluten-free diet is incredibly simple, requiring just a couple of easy substitutions without compromising on taste or texture. You can absolutely enjoy a delicious gluten-free mac and cheese!
Gluten-Free Pasta Options
The first and most obvious substitution is to use gluten-free pasta. The market for gluten-free pasta has vastly improved, offering a wide array of shapes and textures. When choosing, look for brands that hold their shape well and don’t become overly mushy. I’ve found that brands like Tinkayada produce gluten-free pasta that closely mimics the texture and taste of traditional wheat pasta, with minimal crumbling. Always follow the package instructions for cooking gluten-free pasta, as cooking times can vary. It’s often best to cook it slightly less than fully done (al dente) as it can continue to absorb moisture and soften when combined with the hot sauce.
Gluten-Free Thickeners for the Sauce
For the cheese sauce, you have excellent options to replace the all-purpose flour typically used in the roux:
- Gluten-Free All-Purpose Flour Blend: The easiest method is to simply substitute regular flour with a gluten-free all-purpose flour blend. Many blends are specifically formulated to act as a 1:1 replacement for wheat flour in recipes. Just whisk it into the melted butter to form your roux exactly as you would with regular flour, then proceed with adding the milk. Ensure the blend you choose is suitable for sauces and gravies.
- Cornstarch (or Arrowroot Powder): Another reliable option is to use cornstarch as your thickener. Unlike flour, cornstarch needs to be mixed into a cold liquid first to prevent clumping. For this recipe, you would typically use about 1 tablespoon of cornstarch. Mix it with a small amount of cold milk (from the recipe’s total milk) to create a smooth slurry. Once the butter is melted in the pot, pour in the main portion of the milk and bring it to a gentle simmer. Then, slowly whisk in the cornstarch slurry and continue stirring until the sauce thickens. Avoid boiling vigorously once the cornstarch is added, as this can sometimes cause the sauce to thin out again. Arrowroot powder can be used similarly to cornstarch, often resulting in a slightly glossier sauce.
Creating a Delicious Lactose-Free Mac and Cheese
If you’re lactose intolerant, don’t despair! You can absolutely enjoy rich, creamy mac and cheese by making a few simple adjustments. Many people are surprised to learn that they can still consume certain cheeses, and there are excellent dairy-free alternatives available for milk and cream cheese.
Understanding Lactose in Cheese
Here’s a liberating fact for many with lactose intolerance: cheeses that are aged six months or longer are naturally lactose-free. During the aging process, the lactose (milk sugar) in the cheese is broken down by enzymes, leaving little to no lactose behind. This means you can enjoy many hard and semi-hard cheeses without discomfort. While soft cheeses like blue cheese, Brie, feta, and cream cheese typically contain higher levels of lactose, many common favorites are naturally lactose-free, including:
- Cheddar (aged)
- Parmesan
- Monterey Jack
- Swiss
- Provolone
- Gouda (aged)
- Some Mozzarella varieties (especially fresh mozzarella)
Always make sure to check the labels! Many cheese brands will clearly state the lactose content directly on the label, usually under the nutritional information. Look for phrases like “contains 0g of lactose per serving.” If lactose content isn’t explicitly mentioned, you can often infer it by looking at the sugar content. Since lactose is a sugar, a cheese with 0g of sugar per serving will generally indicate a very low or non-existent lactose level.
Lactose-Free Milk and Cream Cheese Substitutions
- Lactose-Free Milk: This is a straightforward swap. Replace regular milk with lactose-free milk, which has the lactase enzyme added to break down the lactose. Brands like Fairlife often offer a less sweet taste compared to Lactaid, which can be preferable in savory dishes like mac and cheese. Other non-dairy milks like unsweetened almond milk, soy milk, or oat milk can also be used, but be aware that their flavor profiles will be different and they may impact the sauce’s texture slightly. Choose unsweetened varieties to avoid a sweet cheese sauce.
- Plant-Based Cream Cheese: For the cream cheese component, easily substitute it with a vegan (plant-based) cream cheese. Many dairy-free cream cheese brands are excellent and melt smoothly into sauces, contributing a similar rich, tangy creaminess. I’ve found several brands on the market that melt and incorporate beautifully into a cheese sauce, ensuring you don’t miss out on that extra velvety texture.
Storing and Reheating Your Homemade Mac and Cheese
Leftover mac and cheese is a treat in itself, but it’s important to store and reheat it properly to maintain its deliciousness and creamy texture.
Storing Leftovers
To keep your homemade mac and cheese fresh, transfer any leftovers into an airtight food storage container. Alternatively, if you cooked it in a pot that can be sealed, simply cover the pot tightly. Store it promptly in the refrigerator. When properly stored, your mac and cheese should remain good for about 3 to 4 days.
Reheating a Whole Pot on the Stovetop
While individual portions can be quickly reheated in the microwave, reheating a whole pot on the stovetop is ideal for maintaining the sauce’s creamy consistency.
- Place the pot of leftover mac and cheese on the stovetop over medium-low heat.
- Add about 1/4 to 1/3 cup of milk (or more if it looks very dry). Pasta tends to absorb a lot of moisture from the sauce as it sits, so adding extra milk is crucial for refreshing the sauce.
- Cover the pot to help generate steam and promote even reheating.
- Stir the mac and cheese every few minutes, ensuring it heats through evenly and the added milk incorporates into the sauce, bringing back its creamy texture. Reheat only until warmed through, avoiding any vigorous boiling.
Reheating Single Portions in the Microwave
For quick individual servings, the microwave is your friend, but a little trick ensures it comes out perfectly creamy.
- Transfer a single portion of mac and cheese to a microwave-safe bowl.
- Add a couple of tablespoons of milk to the bowl with the pasta. This is key to rehydrating the pasta and rejuvenating the cheese sauce.
- If you have one, use a microwave cover to help trap moisture and heat evenly.
- Reheat the mac and cheese in 30-45 second increments, stopping to stir in between each increment. This prevents hotspots and ensures the sauce re-melts smoothly. Reheat only until heated through, not overcooked.
PRO TIP: The secret to delicious reheated mac and cheese is almost always the addition of extra milk. As pasta cools and sits, it continues to absorb moisture from the cheese sauce, making it thicker and sometimes drier. Stirring in a little milk (or even a splash of cream) during reheating will help to invigorate the pasta and cheese sauce, bringing it back to its original creamy glory.

Did you make this recipe?
PLEASE leave a 🌟 star rating! Let me know how you liked it by leaving the 📝 comment below or share and tag me on social media @willcookforsmiles. DON’T FORGET to subscribe to my newsletter!
Homemade Stovetop Mac and Cheese Recipe
My easy homemade mac and cheese recipe is perfectly creamy, smooth, and incredibly cheesy, all made on the stovetop in just 30 minutes. This recipe features a dynamic trio of cheeses—extra sharp cheddar for deep flavor, Monterey Jack for a beautiful melt, and cream cheese for ultimate silkiness—ensuring the best possible cheese sauce.
Rating: 4.63 from 80 votes
Print Recipe | Pin Recipe | Watch Video | Rate This Recipe
Course: Main Course | Cuisine: American
Prep Time: 5 minutes | Cook Time: 20 minutes | Total Time: 25 minutes
Servings: 8 | Calories: 557kcal
Author: Lyuba Brooke
Ingredients
- 1 lb elbow macaroni
- Salt (for cooking pasta water)
- 2 tbsp unsalted butter
- 2 tbsp all purpose flour
- 2 cups 2% milk (or whole milk for richer sauce)
- 10 oz extra sharp cheddar cheese (block, grated for smoother melt)
- 8 oz Monterrey Jack cheese (block, grated for smoother melt)
- 3 oz cream cheese
- 1/2 tsp smoked paprika
- Salt (to taste)
- Fresh cracked black pepper (to taste)
Instructions
- Bring a large pot of water to a boil and season generously with salt. Cook pasta according to package instructions until al dente. Drain completely once cooked.
- While pasta is cooking, grate all your cheeses (cheddar, Monterey Jack) and cut the cream cheese into small pieces. This ensures efficient melting.
- Melt butter in a large pot or Dutch oven over medium heat.
- Whisk in flour to form a smooth roux. Cook, stirring, for 1-2 minutes to remove the raw flour taste. Slowly pour in milk while constantly whisking until all incorporated and the sauce begins to thicken slightly. Let the milk heat through until thickened, stirring from time to time, ensuring it doesn’t boil.
- Add the small pieces of cream cheese to the pot. Stir until fully melted and mixed into the sauce.
- Begin adding the grated cheeses, one handful at a time, stirring slowly after each addition to allow it to melt smoothly before adding more.
- Season the cheese sauce with paprika, salt, and pepper to taste.
- Once all cheese is melted and the sauce is smooth and creamy, add the drained pasta. Stir until completely combined and every noodle is coated. Cook on medium-low heat for just a couple of minutes to heat the pasta through. Do not boil. Remove from heat and serve immediately.
Video
Watch a step-by-step video guide for this recipe:
Click here to watch the recipe video
Notes
- *Dietary Options: Refer to the main article for detailed instructions on how to make this mac and cheese gluten-free and/or lactose-free!
- Important Cooking Tip: Remember: Never let the cheese sauce or the finished mac and cheese boil! Cook the cheese sauce over medium to medium-low heat to allow the milk to heat through and the cheese to melt gently. After adding the pasta, you will only cook for an additional couple of minutes to simply heat the pasta through. Overheating can cause the sauce to separate.
- Reheating a Whole Pot: You can reheat the whole pot on the stovetop. Ensure to reheat it over medium-low heat and add about 1/4-1/3 cup of milk to restore creaminess. Cover the pot as it reheats and stir every few minutes.
- Reheating Single Portions: When reheating individual portions in the microwave, add a couple of tablespoons of milk to the bowl with pasta. Use a microwave cover if you have one. Reheat the mac and cheese in 30-45 second increments, stirring in between each burst, until heated through.
Nutrition
Calories: 557kcal | Carbohydrates: 47g | Protein: 25g | Fat: 28g | Saturated Fat: 17g | Cholesterol: 86mg | Sodium: 437mg | Potassium: 281mg | Fiber: 1g | Sugar: 5g | Vitamin A: 925IU | Vitamin C: 0.1mg | Calcium: 560mg | Iron: 1.3mg
Tried this recipe?
Mention @willcookforsmiles or tag #willcookforsmiles!
More Mac and Cheese Recipes to Explore
Once you’ve mastered this classic, why not venture into other delightful mac and cheese variations? There’s a whole world of cheesy goodness waiting to be discovered:
- Creamy Pumpkin Mac and Cheese
- Savory Smokehouse Mac and Cheese
- Parmesan Baked Mac and Cheese
- Decadent Lobster Mac and Cheese
- Classic Baked Mac and Cheese
- Flavorful Crab Mac and Cheese
This recipe was originally published on Will Cook For Smiles on February 1, 2019, and has been updated for improved clarity and additional tips.