This Minestrone Soup is a hearty Italian vegetable soup made with tender vegetables, creamy beans, small pasta, and a flavorful tomato-based broth. Each spoonful combines soft beans, colorful vegetables, and perfectly cooked pasta, creating a satisfying soup that works well for lunch or dinner.

This homemade version uses simple pantry ingredients, including canned tomatoes and beans, along with fresh vegetables and Italian herbs. Everything cooks in one large pot, making preparation straightforward and cleanup manageable. The soup can also be prepared ahead, with the pasta cooked separately if you plan to store leftovers.
Why This Recipe Works
- Aromatic vegetables build the flavor foundation. Slowly cooking onion, carrots, and celery in olive oil creates a savory base before the broth is added.
- Tomato paste adds depth. Cooking tomato paste briefly with the vegetables develops a richer tomato flavor without requiring a long simmer.
- Beans make the soup more satisfying. Cannellini and kidney beans provide contrasting textures and add plant-based protein and fiber.
- Small pasta gives the soup substance. Ditalini or another small pasta shape fits naturally into each spoonful without overwhelming the vegetables.
- Spinach and lemon brighten the finished soup. Fresh spinach adds color, while a little lemon juice balances the tomato broth and enhances the vegetable flavors.
Equipment Needed
- Large Dutch oven or heavy-bottomed soup pot, at least 6-quart (5.7-liter) capacity
- Sharp kitchen knife
- Cutting board
- Wooden spoon or heatproof spatula
- Measuring cups and spoons
- Colander for rinsing and draining beans
- Ladle for serving
Ingredients List

For the Minestrone Soup
- 2 tablespoons (30 ml) extra-virgin olive oil
- 1 medium yellow onion (about 150 g), finely diced
- 2 medium carrots (about 150 g), peeled and diced into 1/2-inch pieces
- 2 medium celery stalks (about 100 g), diced
- 1 medium zucchini (about 200 g), diced into 1/2-inch pieces
- 4 garlic cloves (about 12 g), minced
- 2 tablespoons (30 g) tomato paste
- 1 can (14.5 ounces/411 g) diced tomatoes, with their juices
- 1 can (15 ounces/425 g) cannellini beans, drained and rinsed
- 1 can (15 ounces/425 g) kidney beans, drained and rinsed
- 6 cups (1.4 liters) low-sodium vegetable broth
- 1 cup (240 ml) water
- 1 teaspoon (about 1 g) dried Italian seasoning
- 1 teaspoon (about 1 g) dried basil
- 1/2 teaspoon (about 1 g) freshly ground black pepper
- 1/2 teaspoon (about 3 g) fine salt, plus more to taste
- 3/4 cup (about 105 g) dry ditalini pasta
- 2 cups (about 60 g) fresh baby spinach, roughly chopped
- 1 tablespoon (15 ml) fresh lemon juice
Optional Garnishes
- 1/4 cup (25 g) Parmesan cheese, freshly grated, optional
- 2 tablespoons (about 5 g) fresh parsley, finely chopped, optional
Ingredient Notes and Substitutions
- Cannellini Beans and Kidney Beans: Cannellini beans have a creamy texture and mild flavor, while kidney beans are slightly firmer and hold their shape during simmering. Using both gives Minestrone Soup a more interesting texture. Great Northern beans can replace cannellini beans in the same quantity. Chickpeas can replace kidney beans, although they will create a firmer, nuttier texture.
- Ditalini Pasta: Ditalini is a small, tube-shaped pasta commonly used in Italian soups. Its compact shape works well with diced vegetables and beans, making the soup easy to eat with a spoon. Small elbow macaroni, tiny shells, or another small pasta shape can be substituted. Cooking time may vary depending on the pasta shape and brand. For a gluten-free version, use a suitable gluten-free small pasta and cook according to its package instructions. Cooking it separately may help prevent excess starch from thickening the soup.
- Vegetable Broth: Vegetable broth forms the liquid base and brings together the flavors of the beans, tomatoes, and aromatic vegetables. Low-sodium chicken broth can be substituted in the same quantity if a vegetarian soup is not required. Chicken broth may give the finished soup a slightly richer, meatier flavor.
- Zucchini: Zucchini adds a tender texture and mild, slightly sweet vegetable flavor. It cooks relatively quickly, making it suitable for a soup that simmers for less than an hour. Yellow summer squash can replace zucchini in an equal amount without significantly changing the cooking time. Diced green beans are another option, although they may need a few additional minutes to become tender.
- Diced Tomatoes and Tomato Paste: Diced tomatoes provide acidity, texture, and body, while tomato paste contributes concentrated tomato flavor. Crushed tomatoes can replace diced tomatoes in the same quantity. The broth will be slightly thicker and smoother, with fewer distinct tomato pieces. Tomato paste has no equally concentrated direct substitute in this recipe. Omitting it will produce a lighter tomato flavor.
Step-by-Step Instructions
1. Prepare the Vegetables
Dice the onion, carrots, celery, and zucchini into small, evenly sized pieces. Mince the garlic, drain and rinse both cans of beans, and roughly chop the spinach.
Keeping the vegetables similar in size helps them cook evenly and ensures each spoonful contains a balanced mixture of ingredients.

2. Sauté the Aromatic Vegetables
Heat 2 tablespoons (30 ml) extra-virgin olive oil in a large 6-quart Dutch oven or soup pot over medium heat.
Add the diced onion, carrots, and celery. Cook for 6 to 8 minutes, stirring occasionally, until the onion becomes translucent and the vegetables begin to soften.
The vegetables should look glossy and tender around the edges without developing deep brown spots. Reduce the heat slightly if they begin to brown too quickly.

3. Add the Zucchini and Garlic
Stir in the diced zucchini and cook for 3 minutes, allowing it to soften slightly.
Add the 4 minced garlic cloves and cook for another 30 to 60 seconds, stirring frequently.
The garlic should become fragrant but should not turn dark brown, which can introduce bitterness.

4. Cook the Tomato Paste
Add 2 tablespoons (30 g) tomato paste to the vegetables. Stir continuously for about 1 minute, until the paste coats the vegetables and deepens slightly in color.
This brief cooking step helps mellow the raw taste of tomato paste and creates a richer foundation for the soup.
5. Add the Tomatoes, Broth, and Seasonings
Pour in the can of diced tomatoes with its juices, 6 cups (1.4 liters) vegetable broth, and 1 cup (240 ml) water.
Add 1 teaspoon dried Italian seasoning, 1 teaspoon dried basil, 1/2 teaspoon black pepper, and 1/2 teaspoon fine salt.
Stir thoroughly, scraping the bottom of the pot to release any flavorful tomato paste or vegetable bits.

6. Simmer the Soup
Increase the heat to medium-high and bring the soup to a gentle boil.
Reduce the heat to medium-low, cover partially, and simmer for 10 to 12 minutes, until the carrots are nearly tender when pierced with a fork.
The broth should bubble gently rather than boil rapidly. A vigorous boil can break down the vegetables and evaporate too much liquid.
7. Add the Beans and Pasta
Stir in the drained cannellini beans, drained kidney beans, and 3/4 cup (105 g) dry ditalini pasta.
Increase the heat slightly if needed to bring the soup back to a gentle simmer.
Cook uncovered for 8 to 12 minutes, stirring occasionally, until the pasta is tender but still has a slight bite and the carrots are fully cooked.
Check the pasta package for its recommended cooking time. If the soup becomes too thick, add a little additional hot water.

8. Stir in the Spinach
Add 2 cups (60 g) roughly chopped baby spinach and stir gently.
Cook for 1 to 2 minutes, just until the spinach wilts and turns bright green.
Avoid simmering the spinach for too long, as it can lose its fresh color and become excessively soft.
9. Finish with Lemon Juice
Turn off the heat and stir in 1 tablespoon (15 ml) fresh lemon juice.
Taste the broth and adjust the salt if necessary. The soup should have a balanced flavor with noticeable tomato richness, savory herbs, and a gentle brightness from the lemon.
If the broth tastes too concentrated, add a small amount of hot water to loosen it.
10. Serve the Minestrone Soup
Ladle the hot soup into bowls, making sure each serving contains vegetables, beans, pasta, and broth.
If desired, garnish with freshly grated Parmesan cheese and chopped parsley.
Serve immediately while the pasta is tender and the vegetables retain their texture.
Storage, Freezing, and Make-Ahead Instructions
- Refrigerator Storage: Allow the Minestrone Soup to cool slightly, then transfer it to shallow, airtight containers and refrigerate promptly. Store at 40°F (4°C) or below for up to 3 to 4 days. Do not leave the soup at room temperature for longer than 2 hours. The pasta will continue absorbing liquid during storage, making the soup thicker. Add a splash of broth or water when reheating to restore its consistency.
- Freezing Instructions: Minestrone Soup freezes well when prepared without the pasta. For freezing, cook the soup through the vegetable and bean stages, add the spinach and lemon juice, and leave out the dry pasta. Cool and transfer to freezer-safe containers, leaving some space for expansion. Freeze for up to 3 months for good quality. Thaw overnight in the refrigerator, then reheat and add separately cooked pasta before serving. Soup containing already-cooked pasta can also be frozen, but the pasta may become noticeably softer after thawing.
- Reheating Instructions: Reheat refrigerated soup in a saucepan over medium heat, stirring occasionally, until it reaches a gentle simmer and an internal temperature of 165°F (74°C). Add a little vegetable broth or water if the soup has thickened during storage. For microwave reheating, use a microwave-safe bowl, cover loosely, and heat in intervals, stirring between intervals until the soup reaches 165°F (74°C) throughout.
- Make-Ahead Instructions: To prepare Minestrone Soup ahead of time, make the vegetable, bean, and tomato broth base and refrigerate it in an airtight container for up to 2 days before serving. When ready to eat, reheat the soup, cook the pasta separately, and add it along with freshly wilted spinach and lemon juice. Keeping the pasta separate helps preserve its texture and prevents the broth from becoming overly thick.

FAQ
Can I make Minestrone Soup ahead of time?
Yes. Minestrone Soup is a practical make-ahead meal because the broth, beans, and vegetables hold up well in the refrigerator. For the best texture, prepare the soup without the pasta and cook the pasta separately before serving. This prevents the pasta from absorbing too much broth.
Can I make Minestrone Soup gluten-free?
Yes. Replace the ditalini with gluten-free small pasta or cooked rice. If using gluten-free pasta, cooking it separately is often helpful because some varieties release extra starch or become soft when left in hot broth.
Why is my Minestrone Soup too thick?
Minestrone Soup often thickens because the pasta absorbs liquid as it cooks and while it sits in the refrigerator. Stir in additional hot vegetable broth or water until the soup reaches your preferred consistency. For future batches intended as leftovers, store the pasta separately.
Can I make Minestrone Soup without pasta?
Absolutely. Simply omit the pasta for a vegetable-and-bean version. The soup will be lighter and more broth-forward. You can add extra vegetables or beans for more substance, although that will change the final yield and consistency.
What can I serve with Minestrone Soup?
Minestrone Soup pairs well with crusty Italian bread, garlic bread, focaccia, or a simple green salad. A sprinkle of Parmesan adds a salty finish, while chopped fresh parsley gives the soup a little extra freshness.

Ingredients
Method
- Dice the onion, carrots, celery, and zucchini into small, evenly sized pieces. Mince the garlic, drain and rinse both cans of beans, and roughly chop the spinach. Keeping the vegetables similar in size helps them cook evenly and ensures each spoonful contains a balanced mixture of ingredients.
- Heat 2 tablespoons (30 ml) extra-virgin olive oil in a large 6-quart Dutch oven or soup pot over medium heat. Add the diced onion, carrots, and celery. Cook for 6 to 8 minutes, stirring occasionally, until the onion becomes translucent and the vegetables begin to soften. The vegetables should look glossy and tender around the edges without developing deep brown spots. Reduce the heat slightly if they begin to brown too quickly.
- Stir in the diced zucchini and cook for 3 minutes, allowing it to soften slightly. Add the 4 minced garlic cloves and cook for another 30 to 60 seconds, stirring frequently. The garlic should become fragrant but should not turn dark brown, which can introduce bitterness.
- Add 2 tablespoons (30 g) tomato paste to the vegetables. Stir continuously for about 1 minute, until the paste coats the vegetables and deepens slightly in color. This brief cooking step helps mellow the raw taste of tomato paste and creates a richer foundation for the soup.
- Pour in the can of diced tomatoes with its juices, 6 cups (1.4 liters) vegetable broth, and 1 cup (240 ml) water. Add 1 teaspoon dried Italian seasoning, 1 teaspoon dried basil, 1/2 teaspoon black pepper, and 1/2 teaspoon fine salt. Stir thoroughly, scraping the bottom of the pot to release any flavorful tomato paste or vegetable bits.
- Increase the heat to medium-high and bring the soup to a gentle boil. Reduce the heat to medium-low, cover partially, and simmer for 10 to 12 minutes, until the carrots are nearly tender when pierced with a fork. The broth should bubble gently rather than boil rapidly. A vigorous boil can break down the vegetables and evaporate too much liquid.
- Stir in the drained cannellini beans, drained kidney beans, and 3/4 cup (105 g) dry ditalini pasta. Increase the heat slightly if needed to bring the soup back to a gentle simmer. Cook uncovered for 8 to 12 minutes, stirring occasionally, until the pasta is tender but still has a slight bite and the carrots are fully cooked. Check the pasta package for its recommended cooking time. If the soup becomes too thick, add a little additional hot water.
- Add 2 cups (60 g) roughly chopped baby spinach and stir gently. Cook for 1 to 2 minutes, just until the spinach wilts and turns bright green. Avoid simmering the spinach for too long, as it can lose its fresh color and become excessively soft.
- Turn off the heat and stir in 1 tablespoon (15 ml) fresh lemon juice. Taste the broth and adjust the salt if necessary. The soup should have a balanced flavor with noticeable tomato richness, savory herbs, and a gentle brightness from the lemon. If the broth tastes too concentrated, add a small amount of hot water to loosen it.
- Ladle the hot soup into bowls, making sure each serving contains vegetables, beans, pasta, and broth. If desired, garnish with freshly grated Parmesan cheese and chopped parsley. Serve immediately while the pasta is tender and the vegetables retain their texture.





