Creamy Penne Pasta
Penne coated in a pale, glossy garlic-Parmesan sauce makes a simple skillet pasta without meat or added vegetables. Butter and flour thicken the milk and broth, while Parmesan melts in at the end. Cook the penne just shy of al dente so it stays tender, not soft, during its brief finish in the sauce. Serve it straight from the skillet with grated Parmesan and parsley while a little sauce is still visible between the pieces.
Ingredients for Creamy Penne Pasta

- 12 ounces penne pasta (340g)
- Kosher salt, for the pasta water and sauce
- 3 tablespoons unsalted butter (45g)
- 3 cloves garlic, minced
- 2 tablespoons all-purpose flour (15g)
- 1 1/2 cups whole milk
- 1 cup low-sodium chicken broth, or vegetable broth for a vegetarian version
- 1 cup finely grated Parmesan, plus 2 to 3 tablespoons for topping (about 100g total)
- 1/4 teaspoon black pepper, or to taste
- 2 tablespoons finely chopped fresh parsley
Freshly grated Parmesan melts more smoothly than pre-shredded cheese. Taste the sauce before adding much salt; the broth and cheese contribute saltiness.
How to Make Creamy Penne Pasta

- Boil the penne: Bring a large pot of salted water to a boil over high heat. Add the penne and stir occasionally. Start checking 1 to 2 minutes before the package’s listed al dente time; drain when the pasta is tender at the edges but still has a slight bite in the center. Reserve 1/2 cup pasta water before draining.
- Cook the garlic: While the pasta cooks, melt the butter in a roomy 12-inch skillet over medium-low heat. Add the garlic and stir for 30 to 60 seconds, until fragrant but still pale. Browned garlic can taste bitter.
- Make the roux: Whisk in the flour and cook, whisking, for about 2 minutes, until no dry flour remains and the mixture forms a smooth paste. Gradually whisk in the milk and broth, a little at a time, until smooth.
- Thicken the sauce: Simmer uncovered over medium-low heat, whisking often, for about 4 to 6 minutes. Begin checking after a few minutes; the sauce should lightly coat the back of a spoon. Lower the heat, stir in 1 cup Parmesan until melted, then season with pepper and salt to taste. Do not let the sauce boil vigorously after adding the cheese.
- Toss the pasta: Add the drained penne and toss over low heat for 1 to 2 minutes, until coated. If the sauce becomes too thick, add reserved pasta water a splash at a time. It should look glossy, with a little sauce visible between the pieces.
- Finish and serve: Remove the skillet from the heat. Scatter the remaining Parmesan and parsley over the penne and serve promptly.
How to Keep the Sauce Smooth
Add the milk and broth gradually while whisking so the roux absorbs the liquid without forming lumps. Keep the sauce at a gentle simmer, then lower the heat before stirring in the Parmesan; boiling hard after the cheese goes in can make the sauce grainy.
If the sauce still looks thin before adding the cheese, simmer it gently for another minute or two. It should coat a spoon lightly, not look thick and pasty—it will thicken further when the penne is added.
Keeping the Penne Glossy
The penne finishes cooking in the hot sauce and continues to absorb liquid as it sits. If it starts to look dry, toss in a splash of reserved pasta water, milk, or broth until the sauce loosens. Serve while the coating is still fluid and glossy.
How to Store and Reheat Creamy Penne
Refrigerate leftovers in a covered container for up to 3 days. Reheat gently, stirring in a splash of milk to loosen the sauce as it warms. The sauce’s texture after freezing is uncertain.
Nutrition
Approximate nutrition per serving, based on 4 servings: 575 calories, 25g protein, 20g fat, and 71g carbohydrates. Approximate nutrition per 100g: 150 calories, 6g protein, 5g fat, and 19g carbohydrates. Values vary with the pasta, broth, milk, and Parmesan used.
Creamy Penne Pasta
Equipment
- Large pot
- 12-inch skillet
- Whisk
- Colander
Ingredients
- 12 ounces penne pasta (340 g)
- Kosher salt, for the pasta water and sauce
- 3 tablespoons unsalted butter (45 g)
- 3 cloves garlic, minced
- 2 tablespoons all-purpose flour (15 g)
- 1 1/2 cups whole milk
- 1 cup low-sodium chicken broth
- 1 cup finely grated Parmesan, plus 2 to 3 tablespoons for topping (about 100 g total)
- 1/4 teaspoon black pepper, or to taste
- 2 tablespoons finely chopped fresh parsley
Instructions
- Bring a large pot of salted water to a boil. Add the penne and cook, stirring occasionally, until tender at the edges but still slightly firm in the center. Reserve 1/2 cup pasta water, then drain.
- While the pasta cooks, melt the butter in a 12-inch skillet over medium-low heat. Add the garlic and stir for 30 to 60 seconds, until fragrant but still pale.
- Whisk in the flour and cook for about 2 minutes, until it forms a smooth paste with no dry flour.
- Gradually whisk in the milk and broth, adding a little at a time until smooth.
- Simmer uncovered over medium-low heat for 4 to 6 minutes, whisking often, until the sauce lightly coats the back of a spoon.
- Lower the heat and stir in 1 cup Parmesan until melted. Season with pepper and salt to taste.
- Add the drained penne and toss over low heat for 1 to 2 minutes, until coated. Add reserved pasta water a splash at a time if the sauce is too thick.
- Remove the skillet from the heat. Top with the remaining Parmesan and parsley, then serve promptly.
Tips
- Start checking the penne 1 to 2 minutes before the package’s listed al dente time.
- Add the milk and broth gradually while whisking to help prevent lumps.
- Keep the garlic pale so it does not turn bitter.
- Lower the heat before adding Parmesan, and avoid boiling the sauce vigorously afterward.
- If the finished pasta looks dry, loosen the sauce with a splash of reserved pasta water, milk, or broth.
Variations
- Vegetarian Creamy Penne: Use low-sodium vegetable broth instead of chicken broth.
