My favorite one-pot stovetop mac and cheese recipe can be ready to go in less than 30 minutes and always tastes perfectly creamy, cheesy and so comforting.
- 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
- 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!
Type of pasta: The pasta shape that you use here is an important factor, since the cooking time (and thus, the amount of water soaked up) by different pasta shapes can vary dramatically. I recommend using a pasta shape that lists an approximately 8-minute cooking time on its package, such as cavatappi, which is shown in the photos above. If your pasta lists a different cooking time, just note that you may need to use more or less cooking water. (You should only have about 1/2 cup of starchy pasta water remaining in the pot, removing any extra, before mixing in the cheese.)
Amount of cheese: My original version of this recipe called for 4 cups of cheddar, which is delicious, but also felt like a bit heavy. After remaking this recipe multiple times over the years, I prefer making it now with 2 cups good-quality white cheddar, which still tastes plenty cheesy to me. But of course, you are welcome to use whichever amount of cheese you prefer.
Recipe edit: This recipe was updated in 2022. The original recipe called for 2 tablespoons butter and 2 tablespoons flour (sautéed together first to make a roux), combined with 3 cups water, 4 cups milk, 1 pound uncooked pasta, 1 teaspoon fine sea salt, 1/2 teaspoon garlic powder and 1/4 teaspoon ground mustard (all simmered together until the pasta is cooked), combined with 4 cups shredded cheddar and 1/2 cup Parmesan (stirred with the pasta until melted). I omitted the roux from the updated version because I found it unnecessary to thicken the cheese sauce and subbed Dijon for ground mustard keep it stocked in their kitchens.