Minestrone Soup is a classic Italian favorite—hearty, wholesome, and endlessly adaptable. Loaded with vegetables, beans, and pasta in a rich, flavorful tomato-based broth, it’s the perfect way to make the most of what’s in your kitchen.

Before You Start Cooking
- Minestrone Soup began as a “cucina povera” (peasant food) dish in ancient Rome, made to use up whatever vegetables were on hand. Today, there’s no single recipe—Minestrone varies by region, season, and cook. Some versions are brothy, while others, like this one, are thicker and heartier.
- The recipe calls for 6 cups of chicken or vegetable broth, but I recommend keeping 2 quarts (8 cups) on hand so you can adjust the consistency to your liking.
- I add pancetta (Italian salt-cured pork belly) to my Minestrone Soup for an extra layer of rich, savory flavor. To make this recipe vegetarian, omit the pancetta and use olive oil instead.
How to Make Minestrone Soup
Step 1: Prep the Ingredients
The most time-consuming part of this recipe is the prep, so I like to set aside about 30 minutes for my mise en place—measuring, chopping, and getting everything ready before cooking.
Don’t let the initial time commitment deter you! Once the prep is done, the soup comes together easily. Here’s what you’ll need to have ready:
- Pancetta. For convenience, I often buy pre-diced pancetta. If using a slab, dice it into small, 1/8- to 1/4-inch pieces so it renders into the soup without large chunks.
- Celery, Carrots, and Onion. Peel and dice the carrots and yellow onion into 1/4-inch pieces. Cut the celery into 1/4-inch thick slices.
- Garlic. Mince whole garlic cloves. I like to use a garlic press for a fine texture that melts into the soup.
- Zucchini. No need to peel. Slice the zucchini into 1/4-inch rounds, then quarter each round. If your zucchini is larger (over 1-1/2 inches in diameter), dice it instead so it cooks evenly.
- Green Beans. You can use fresh or frozen cut green beans (no need to thaw). American green beans or thinner French beans both work. Trim and cut fresh beans into 1-inch pieces.
- Canned or Cooked Beans. I use a mix of cannellini beans and light red kidney beans. Drain and rinse canned beans under cool running water to remove excess starch and sodium.
- Fresh Herbs. Mince fresh rosemary and thyme. (You’ll also need fresh basil before serving, but don’t tear the leaves until you’re going to add them to the soup.)
- Plum Tomatoes. For the best flavor, use canned whole, peeled Roma tomatoes, preferably San Marzano. Rather than using pre-crushed tomatoes, I crush them by hand in a bowl for a better texture. You can also use a potato masher.
Step 2: Assemble the Soup
You’ll need a large, heavy-bottomed pot or Dutch oven to make Minestrone Soup. The 6.75-quart Le Creuset Round Wide Dutch Oven {affiliate link}, shown in the photos here, is one of my favorite pots for hearty soups like Minestrone.
Render the Pancetta
Start by building the soup’s flavor base with pancetta. Add a splash of olive oil and the pancetta to a cold pot, then set it over medium heat. Slowly warming the pancetta from a cold start helps it release its fat evenly.
Cook for 3–4 minutes, stirring occasionally. The goal is to render the fat without crisping or browning the pancetta at this point—just let it soften and infuse the oil with its rich, savory flavor.
Sauté the Aromatics
Once the pancetta has rendered its fat, add your prepped onions, carrots, and celery to the pot and season them with kosher salt and freshly ground black pepper.
Cook the mixture over medium heat for about 10-12 minutes, until the vegetables are tender, but not caramelized. Give it a stir every couple of minutes to help the vegetables cook evenly.
Tip: Since the amount of rendered pancetta fat can vary by batch, keep an eye on the vegetables as they cook. If the mixture starts sticking or it seems like there isn’t enough fat in the pot to soften the veggies, add a little extra olive oil to the pot.
Once the vegetables are tender, stir in the minced garlic, rosemary, thyme, and your favorite dried Italian herb blend (usually labeled “Italian Seasoning” at the grocery store). Cook this down for just about a minute, until the garlic and herbs are fragrant.
Add in the Good Stuff
Once the aromatics have softened, it’s time to add the heart of the soup—the tomatoes, vegetables, beans, and broth that give Minestrone its signature heartiness.
Add the crushed tomatoes to the pot, stirring to combine them with the mirepoix. Then, add the green beans, zucchini, cannellini beans, and kidney beans.
Add chicken or vegetable broth or stock and stir well to combine. I typically use chicken stock, but if you’re making this vegetarian, use vegetable stock instead.
Tip: If you’re using store-bought stock, I recommend one with a moderate sodium level (the brand I use is around 440 mg per cup). Some brands contain 800+ mg of sodium per cup, which can make the soup overly salty combined with the pancetta, canned tomatoes, and beans.
Before bringing the soup to a simmer, add a large bay leaf to the pot and a Parmigiano Reggiano rind (a great way to infuse the broth with rich, savory flavor!)
When I grate a wedge of Parmigiano, I always save the rind in my freezer for dishes like this. If you don’t have one on hand, check the gourmet cheese counter at the grocery store—many sell containers of rinds for cooking.
Step 3: Simmer the Soup
You’ll simmer this Minestrone Soup in two stages: first, covered to soften the vegetables, and then uncovered when adding the pasta.
Simmer the Vegetables: Bring the soup to a boil, then cover and reduce the heat to maintain a gentle simmer. Let it cook for 20–25 minutes, giving it an occasional stir. You’ll notice a slight thickening of the soup as the beans release starches into the broth.
Add the Pasta: Uncover the pot and stir in 2/3 cup of dried short-cut pasta. I like using tiny shells, but ditalini, mini farfalle (farfallini), or stelline work well too.
Tip: This might not look like much pasta at first for a big pot of soup, but trust me, it is! There’s a lot happening in this soup, and you don’t want it to be too pasta-heavy. Plus, pasta continues to absorb broth even after cooking, so adding too much upfront will make the soup overly thick.
Let the soup simmer for about 10 minutes, or until the pasta is cooked to your liking. Cooking time may vary depending on the pasta shape, so taste-test a piece as you go to ensure it’s perfectly tender.
As the pasta cooks, it will release starches that naturally thicken the broth. Be sure to stir it occasionally to prevent the pasta from sticking to the bottom of the pot and keep everything evenly distributed.
Step 4: Finish the Soup
Once the pasta is cooked, you’re almost ready to serve your Minestrone Soup! Remove and discard the Parmigiano Reggiano rind (it will be very soft and melty) and the bay leaf.
Check the texture of the broth. Minestrone should be hearty, but if the pasta and beans have thickened it more than you’d like, add additional stock, 1/2 cup at a time, until you reach your preferred consistency.
For reference, I added 1 cup of broth to the soup shown in the photos, but when making another batch a couple of nights later, I only needed 1/2 cup. The amount can vary depending on how much the pasta and beans absorb during cooking.
Adjust the Seasoning
Once the broth is where you want it, taste and adjust the seasoning with salt and pepper as needed. If you used a low-sodium broth, you’ll likely need to be more generous with the salt to bring out the soup’s flavors.
Just before serving, tear 6 to 8 fresh basil leaves by hand and stir them into the soup. The residual heat will gently wilt the basil, releasing its aroma and adding a bright, fresh finish to the Minestrone.
Variations
Minestrone is easy to customize with different vegetables and beans based on what you have on hand. Here are some great swaps and additions:
- Leafy Greens. Roughly chop 2 cups of the leaves of your favorite greens. Baby spinach will only need 1-2 minutes (stir it in with the basil just before serving). Kale, Swiss chard, and escarole will need closer to 5 to 7 minutes. to wilt down.
- Cabbage (Green or Savoy). Thinly slice or chop about 2 cups of cabbage and add it with the veggies and broth during the first stage of simmering.
- Peas or Corn. Add them fresh or frozen to the soup with the pasta.
- Summer Squash. Swap out zucchini for yellow summer squash, or use a half-and-half mix of both. Cooking time remains the same.
- Potatoes. For a heartier soup, add peeled and diced Yukon Gold, russet, or sweet potatoes (1/2-inch cubes). Add them during the first stage of simmering.
- Butternut Squash. Dice peeled butternut squash into 1/2-inch cubes and add it during the first stage of simmering.
- Other Bean Varieties. Swap cooked or canned dark red kidney beans, navy beans, chickpeas, or borlotti (cranberry beans).
When making swaps, consider how much starch you’re adding, which will naturally thicken the soup and make it more filling.
For example, if you’re adding potatoes or butternut squash, you might reduce the beans from two cans to one to keep the soup from feeling too heavy.
When swapping vegetables, always keep extra broth or stock on hand to adjust the consistency as needed.
Serving Tips
Ladle the hot soup into bowls and finish with a drizzle of extra virgin olive oil, a generous sprinkle of freshly grated Parmigiano Reggiano, and a few grinds of black pepper.
For an extra boost of flavor, swirl in a spoonful of basil pesto—it adds a bright, herby finish. If you like a little heat, stir in a pinch of crushed red pepper flakes.
Serve with warm, crusty Italian bread for dipping or top with a handful of homemade buttery garlic croutons for extra crunch.
Storing & Reheating Minestrone Soup
Minestrone keeps well in the fridge for up to 4 days. Store leftovers in an airtight container.
I find that the flavor of the soup gets better with time, but it will also thicken significantly as it chills due to the starches from the pasta and beans. When reheating, add extra broth or stock to bring it back to the right consistency, and season to taste with salt and pepper.
Make-Ahead Tip
If you’re making a pot of Minestrone Soup specifically to serve at a later time, I recommend cooking the pasta separately and adding it just before serving. This prevents the pasta from becoming overly soft.
- Cook the pasta in broth or stock instead of water for extra flavor.
- Toss the cooled pasta with a drizzle of olive oil before storing it in an airtight container in the fridge.
- When reheating the soup for serving, stir in the cooked pasta.
More Soup Recipes
Craving more? Browse my full collection of Soup Recipes!
Minestrone Soup
Ingredients
- 4 ounces pancetta , diced small (about 1/8- to 1/4-inch)
- 2 tablespoons olive oil , plus additional, if needed
- 1 cup yellow onion , peeled and chopped into 1/4-inch pieces
- 1 cup carrots , peeled and cut into 1/4-inch dice
- 1 cup celery , cut into 1/4-inch thick slices
- 2 teaspoons minced garlic cloves
- 1 teaspoon finely chopped fresh rosemary
- 1 teaspoon finely chopped fresh thyme leaves
- 1 teaspoon dried Italian seasoning ("Italian Herbs")
- 28 ounce can whole plum tomatoes (preferably San Marzano), finely crushed by hand
- 15 ounce can cannellini beans , rinsed and drained
- 15 ounce can light red kidney beans , rinsed and drained
- 2 cups quartered zucchini wedges (see note)
- 1 cup cut green beans (see note)
- 6 to 8 cups reduced sodium chicken or vegetable broth/stock (see note)
- 1 large bay leaf
- 1 Parmigiano Reggiano rind
- 2/3 cup dried miniature shell pasta , or other short-cut pasta of your choosing
- Diamond Crystal kosher salt and freshly-ground black pepper
- grated Parmigiano Reggiano , for serving
Instructions
- In a large, heavy-bottomed pot (I use a 6.75-quart Dutch oven), add the olive oil and pancetta before heating the pot. Place over medium heat and cook for 3–4 minutes, just until the pancetta renders its fat but remains soft—not browned or crispy.
- Add the onions, celery, and carrots to the pot, along with 1/2 teaspoon each of kosher salt and freshly ground black pepper. Cook over medium heat, stirring occasionally, until the vegetables are tender but not caramelized, about 10–12 minutes (see note).
- Stir in the garlic, rosemary, thyme, and Italian seasoning, and cook for about 1 minute, until fragrant.
- Stir in the crushed tomatoes (with their juices/purée), followed by the cannellini beans, kidney beans, zucchini, and green beans.
- Pour in 6 cups of broth or stock and stir until well combined. Add the bay leaf and Parmigiano Reggiano rind.
- Bring the soup to a boil, cover the pot, and reduce the heat to maintain a gentle simmer. Cook, covered, for 20–25 minutes, until the vegetables are tender. Stir the soup a couple of times as it simmers.
- Uncover the pot and stir the soup. Add the pasta and simmer uncovered for about 10 minutes, until the pasta is tender, stirring occasionally to make sure the pasta isn't sticking to the pot.
- Remove and discard the Parmigiano Reggiano rind and bay leaf. If the soup is too thick, stir in additional broth or stock, 1/2 cup at a time, until you reach your desired consistency. The amount needed may vary by batch.
- Taste and adjust seasoning with salt and pepper as needed. Roughly tear the fresh basil leaves and stir them into the soup just until wilted.
- Ladle the soup hot into bowls. Finish with a drizzle of extra virgin olive oil, a generous sprinkle of grated Parmigiano Reggiano, and a few grinds of black pepper. For a spicy kick, add a few crushed red pepper flakes. Serve with crusty Italian bread for dipping.
Notes
Nutrition Estimate
Nutrition information is automatically calculated, so should only be used as an approximation.
About our recipes
Please note that our recipes have been developed using the US Customary measurement system and have not been tested for high altitude/elevation cooking and baking.