A rustic Italian favorite, Pasta e Fagioli is a warm and satisfying soup made with tender beans, small pasta, and aromatic herbs in a rich tomato broth. I love how simple, hearty, and nourishing it is—perfect for cozy nights when I want something comforting yet easy to make.
Ingredients
(Tip: You'll find the full list of ingredients and measurements in the recipe card below.)
2 tablespoons olive oil
1 medium onion, diced
2 cloves garlic, minced
2 medium carrots, diced
2 celery stalks, diced
1 teaspoon dried oregano
½ teaspoon dried thyme
¼ teaspoon red pepper flakes (optional)
1 (15 oz) can crushed tomatoes
4 cups vegetable broth
1 (15 oz) can cannellini beans, drained and rinsed
1 (15 oz) can red kidney beans, drained and rinsed
¾ cup ditalini or small pasta
Salt and pepper to taste
¼ cup fresh parsley, chopped
Grated Parmesan cheese (for serving, optional)
Directions
I start by heating olive oil in a large pot over medium heat. Then I add onion, carrots, and celery, and sauté for 5-6 minutes until they soften.
Next, I stir in the garlic, oregano, thyme, and red pepper flakes, cooking for about a minute until fragrant.
I pour in the crushed tomatoes and vegetable broth, bring the mixture to a boil, then reduce the heat and let it simmer for 10 minutes.
I add the cannellini and kidney beans and continue to simmer for another 5 minutes.
Then I stir in the pasta and cook uncovered until it's al dente, about 8–10 minutes. If the soup thickens too much, I add more broth or water.
I season with salt and pepper to taste.
Just before serving, I stir in fresh parsley.
I like to serve it hot, topped with grated Parmesan if I'm in the mood.
Servings and timing
Prep Time: 10 minutes
Cooking Time: 25 minutes
Total Time: 35 minutes
Servings: 6 servings
Calories: Approximately 320 kcal per serving
Variations
Sometimes I swap out the pasta for whole wheat or gluten-free varieties depending on who I'm cooking for. I’ve also used chickpeas instead of red kidney beans for a slight twist. If I’m not keeping it vegetarian, I like to add some pancetta or Italian sausage at the beginning for extra depth. For a richer broth, a parmesan rind simmered along with the soup works wonders.
Storage/Reheating
I store leftovers in an airtight container in the fridge for up to 4 days. The pasta tends to absorb more liquid as it sits, so I usually add a splash of broth or water when reheating. For longer storage, I freeze the soup without the pasta and add fresh pasta when reheating for the best texture.
FAQs
How do I keep the pasta from getting mushy in leftovers?
I prefer cooking the pasta separately and adding it to each bowl before serving if I know I’ll have leftovers. That way, it doesn’t overcook or absorb too much broth.
Can I make this soup vegan?
Yes, I just skip the Parmesan or use a vegan cheese alternative. The rest of the ingredients are naturally plant-based.
What can I use instead of ditalini pasta?
I often use elbow macaroni, small shells, or even broken spaghetti when I don’t have ditalini on hand.
Is this soup freezer-friendly?
Absolutely, but I recommend freezing it without the pasta. When reheating, I cook up a fresh batch of pasta and stir it in.
Can I add greens to this soup?
Yes, I sometimes stir in chopped spinach or kale during the last few minutes of cooking for extra nutrients and color.
Conclusion
Pasta e Fagioli is one of those classic comfort foods I keep coming back to. It’s easy to make, incredibly hearty, and packed with flavor. Whether I’m serving it for a weeknight dinner or meal prepping for the week ahead, it always hits the spot.
Recipe:

Pasta e Fagioli
- Total Time: 35 minutes
- Yield: 6 servings
- Diet: Vegetarian
Description
A rustic Italian soup made with beans, pasta, and aromatic vegetables in a rich tomato broth. Hearty, flavorful, and easy to make, it's a comforting one-pot meal perfect for cozy nights.
Ingredients
2 tablespoons olive oil
1 medium onion, diced
2 cloves garlic, minced
2 medium carrots, diced
2 celery stalks, diced
1 teaspoon dried oregano
½ teaspoon dried thyme
¼ teaspoon red pepper flakes (optional)
1 (15 oz) can crushed tomatoes
4 cups vegetable broth
1 (15 oz) can cannellini beans, drained and rinsed
1 (15 oz) can red kidney beans, drained and rinsed
¾ cup ditalini or small pasta
Salt and pepper to taste
¼ cup fresh parsley, chopped
Grated Parmesan cheese (for serving, optional)
Instructions
- Heat olive oil in a large pot over medium heat.
- Add onion, carrots, and celery. Sauté for 5–6 minutes until softened.
- Stir in garlic, oregano, thyme, and red pepper flakes. Cook for 1 minute until fragrant.
- Pour in crushed tomatoes and vegetable broth. Bring to a boil, then reduce heat and simmer for 10 minutes.
- Add cannellini and kidney beans. Simmer for another 5 minutes.
- Stir in the pasta and cook uncovered until al dente, about 8–10 minutes. Add more broth or water if needed.
- Season with salt and pepper to taste.
- Stir in fresh parsley just before serving.
- Serve hot, topped with grated Parmesan if desired.
Notes
Swap pasta with gluten-free or whole wheat options as needed.
Use chickpeas instead of red kidney beans for variation.
Add pancetta or Italian sausage for a non-vegetarian version.
Simmer a parmesan rind for a richer broth.
Freeze without pasta for best texture when reheating.
Cook pasta separately if planning for leftovers.
Stir in greens like spinach or kale at the end for extra nutrients.
- Prep Time: 10 minutes
- Cook Time: 25 minutes
- Category: Soup
- Method: Stovetop
- Cuisine: Italian
Nutrition
- Serving Size: 1 serving
- Calories: 320 kcal
- Sugar: 6g
- Sodium: 680mg
- Fat: 9g
- Saturated Fat: 1.5g
- Unsaturated Fat: 7g
- Trans Fat: 0g
- Carbohydrates: 46g
- Fiber: 10g
- Protein: 12g
- Cholesterol: 0mg