My favorite one-pot stovetop mac and cheese recipe is easy to make in 30 minutes with just 6 main ingredients and always tastes perfectly creamy, cheesy and so comforting.

I’m a firm believer that everyone needs an excellent stovetop mac and cheese recipe in their back pocket. But I have to say I’m especially partial to this one because — as someone who eagerly avoids washing extra dishes at all costs — it comes together quickly and easily in just one pot! ♡
I’ve made plenty of mac and cheese recipes over the years that cook the cheese sauce separately in an additional saucepan. But the brilliance of the one-pot method is that you get the added bonus of super-concentrated starchy pasta water to work with, since you only use about half the amount of liquid typically used to cook pasta. This does wonders with helping the shredded cheese to melt and emulsify and cling to the pasta, creating an ultra-silky, creamy, cheese sauce. And even better? It all comes together in less than 30 minutes!
We’re “plain” mac and cheese fans here in our house, usually opting to serve this pasta with some roasted veggies and a simple green salad on the side. But of course, the options for stirring any of your favorite add-ins (proteins, veggies, herbs, seasonings, sauces, etc) right into the pot of mac and cheese here are limitless. I’ve included lots of ideas and tips below, so please feel free to take this base recipe and customize it exactly to your liking. And enjoy, enjoy!
Let’s make some macaroni and cheese!!

Macaroni and Cheese Ingredients
Before we get to the full mac and cheese recipe below, here are a few important notes about the ingredients you will need. (This recipe was updated slightly in 2022, but for those of you looking for the original ingredient amounts, they are included in the notes below the recipe.)
- Pasta: The shape of pasta that you choose here is important, since cooking times can vary pretty widely between different pasta shapes (which will also affect the amount of liquid that they each soak up). I developed this recipe using cavatappi, which has a nice, chewy bite and lists an approximately 8-minute cooking time on its package. If you decide to use a different pasta shape, try to find one whose package lists a similar cooking time. (Or if the cooking time varies significantly, just note that you may need to use more or less water while cooking.)
- Milk + water: I recommend using whole milk with this recipe, but just about any plain milk (dairy or plant-based) will work here.
- Dijon mustard: A teaspoon of mustard helps to bring out the flavor of the cheddar in this recipe, without making the pasta taste noticeably mustardy. (Although you are welcome to add more mustard if you love that flavor!)
- Fine sea salt and black pepper: We will cook the pasta in a teaspoon of fine sea salt. But since different brands of cheddar can vary pretty in terms of saltiness, I recommend giving the pasta a final taste after mixing in the cheese to see if it needs extra salt. I also love adding a generous amount of black pepper to mac and cheese, but feel free to add your desired amount to taste.
- Garlic powder: I also like to add a hint of garlic powder to the mix for extra depth of flavor.
- Sharp cheddar cheese: I really recommend using a good-quality sharp or extra-sharp cheddar (either yellow or white) since it provides the main seasoning in this dish! As always when making homemade mac and cheese, be sure to shred the cheddar by hand too, so that it melts well.
- Parmesan cheese: Aged Parmesan cheese also adds some deliciously salty, nutty, umami flavor to this dish and helps to bring out the best of the cheddar. Please be sure to freshly-grate the Parmesan too!

Homemade Mac and Cheese Tips
Here are a few of my best tips I’ve learned over the years for making one-pot mac and cheese:
- The pasta shape you choose makes a big difference. The biggest complaint I hear about one-pot mac and cheese recipes is that the pasta-to-liquid ratios don’t turn out quite right, usually resulting in an overly “soupy” cheese sauce. This is usually due to using a pasta shape that cooks very quickly, leaving behind extra water in the pot that has not been properly soaked up. As mentioned above, I recommend avoiding this by using a pasta shape that lists an 8-minute cooking time, in order to properly blend with the liquid and cheese ratios in this recipe. Or if not, you’re welcome to use whatever pasta shape you like, then just double-check that you only have about 1/2 cup of starchy pasta water remaining in the pot (discarding any extra) before mixing in the cheese.
- Don’t overcook the pasta. Since the pasta will continue to cook a bit more in the pot while you are stirring in the cheese, it’s essential that you only boil the pasta until it is *just* shy of al dente so that it will not be overcooked in the end. If you keep a close eye on the pasta and give it a taste test or two near the end of its cooking time, you’ll be good to go!
- Always shred the cheese by hand. Store-bought shredded cheeses are coated with an anti-clumping mixture that prevents them from melting well into a smooth sauce. So anytime you’re making mac and cheese, I recommend purchasing blocks of cheese and shredding them by hand.
- Don’t forget to season. Cheese brands can vary pretty dramatically in terms of their saltiness, so don’t forget to give the pasta one final taste test after mixing in the cheese and season it with a final round of salt and pepper if needed.

Potential Recipe Variations
This mac and cheese recipe is designed to be a base recipe that you can add to and customize however you’d like, so don’t hesitate to experiment and have fun with it! For example, feel free to…
- Use more cheese: My original version of this recipe called for 4 cups (instead of 2 cups) of cheddar, which is of course extra cheesy and delicious! I prefer the lighter version, which I still find to be plenty cheesy, but feel free to use however much cheese you prefer.
- Use half and half: If you want an even creamier mac and cheese, you’re welcome to sub in half and half in place of milk.
- Use a different blend of cheeses: Other cheeses that can work well in place of (or mixed with) cheddar could include fontina, gouda, gruyere, havarti, Monterrey Jack, or pepperjack cheese.
- Add a protein: Chicken, beef, pork, bacon (or guanciale, pancetta, prosciutto, etc), sausage, shrimp, salmon, scallops, or plant-based “meats” would all be delicious options.
- Add veggies or greens: Asparagus, bell peppers, broccoli, Brussels sprouts, fennel, green beans, kale, mushrooms, onions, spinach, sweet potatoes, tomatoes, zucchini or other pasta-friendly veggies would be great.
- Add extra seasonings: There are endless ways that you could play around with the seasonings in this macaroni and cheese recipe. You could add in some additional fresh or dried herbs (such as basil, chives, oregano, rosemary, sage, thyme, etc), other seasonings that you enjoy (such Cajun seasoning, herbs de Provence, za’atar, etc), lemon juice, or additional sauces (such as basil pesto, Mexican salsa verde, pumpkin purée, etc). Just be sure to thoughtfully add seasonings that will pair well with whatever cheese blend that you use.

More Mac and Cheese Recipes
Looking for more cozy homemade macaroni and cheese recipes to try? Here are a few of our faves:
- Cacio e Pepe
- Instant Pot Mac and Cheese
- Roasted Cauliflower Mac and Cheese
- Butternut Squash Mac and Cheese
Stovetop Mac and Cheese

Ingredients
- 1 pound uncooked pasta (I used cavatappi*)
- 3 cups water
- 2 cups milk
- 1 teaspoon Dijon mustard
- 1 teaspoon fine sea salt
- 1 teaspoon garlic powder
- 2 to 4 cups (8 to 16 ounces) freshly-grated sharp cheddar cheese (see note below)
- 1 cup (1 ounce) finely-grated Parmesan cheese
- freshly-ground black pepper, to taste
Instructions
- Cook the pasta. Combine the pasta, water, milk, Dijon, sea salt and garlic powder in a large stockpot. Heat over medium-high heat, stirring the pasta once every few minutes, until the water reaches a boil. Adjust heat as needed to maintain a rolling boil. Continue cooking the pasta, stirring once or twice per minute, until the pasta is *just* barely al dente. (Cooking time will depend on the shape of pasta that you use, so please keep a close eye on it.) Remove pot from heat.
- Remove excess water (if needed). Check to see how much starchy pasta water remains in the pot. If it seems that there is more than 1/2 cup or so, dip a heatproof measuring cup in to remove and save the excess water, then set it to the side. (If by chance there is no starchy pasta water left, please add 1/2 cup hot water to the pot.)
- Add cheese. Add the cheese to the pasta and gently stir until completely melted. If the pasta seems too dry, stir some of the reserved starchy pasta water back in as needed.
- Season. Taste and season with additional salt if needed.
- Serve. Serve warm, garnished with a few twists of black pepper and enjoy!




Excellent but a little tip the cheese won’t separate if you let the pasta cool just a little before adding your cheeses. I also use corn starch instead of flour in the beginning, but that’s just my preference.
I had a 12oz. bag of bowtie veggie pasta, not a pound. Reduced water to 2c. + milk (1%) to 2c. to avoid soupiness. That wasn’t enough liquid to cook pasta, so added 1/2c. hot water + 1/2c. hot milk to simmering pasta. So, for 12oz. of pasta, use approx. 5c. liquid ( recipe calls for 7c. liquid to 1lb. pasta). I reduced the roux & spices accordingly. Grated a block of super-sharp cheese from a cheese shop to 2c., and it’s plenty sharp for me. Threw in some flax seeds as pasta cooked. Tore up the rest of a bag of salad spinach leaves at the end. Delicious. This mac & cheese recipe is so flexible…you can add any veggies that need to be used, any protein, and whatever spices you like. I have herbs & veggies in our garden now, so I may add fresh cilantro and diced peppers…we’ll see. This will be my staple mac & cheese recipe, many thanks.
I’ve made the stove top recipe many times now, taste and consistency are spot on every time with the recipe as written. Has anyone adapted this to a crock pot? My thoughts are to cook the roux stovetop, add the one cup of water and mix, then move to the crock for the remainder of the steps. Has anyone tried this?
Ohhhh did you try this? How did it turn out? I would like to do the same.
Delicious!
it definitely was good and not soupy at all- the only think i would add would be more cheese! i also added some broccoli and it was amazingg
really easy and mine turned out amazing- my son loved it
definitely bookmarking this site
I didn’t have any milk so I used half heavy cream and half water for the milk…so creamy and delicious! Oh, and I used onion powder for half the garlic powder…I can’t get enough of it…YUM!
Loved the one pot! It’s super easy, BUT we thought the sauce to pasta ratio was a little off. We had lots of sauce and needed more pasta. Maybe it depends on the pasta you use. I used a pound of Rotini. It wasn’t soupy at all! I’ll add more pasta when I reheat it. But this is a keeper!!
So easy, fast and AMAZING!
Just made this!! If it tastes as amazing as it looks I’d give it 10 stars. It took a little longer for me too because I’m not used to cooking pasta in water and milk. Didn’t want the heat too high but was afraid of overcooking my pasta. This recipe has me hooked! I’ll REALLY know what I’m doing next time. I wound up using a store bought Mac n Cheese shredded blend. 2 packages = 4 cups.