Minestrone is one of my favorite soups because it gives me everything I need in a single bowl.
There are vegetables, beans for fiber, kale for greens, and pasta for substance, all simmering together in a savory tomato broth.
It’s a power soup — the kind of bowl that covers the whole plate nutritionally and still tastes like something you’d want to eat on a cold night.
I make the hearty version. A lot of minestrones come out thin, with the broth tasting like canned tomatoes and water and the vegetables turning to mush. This one doesn’t, and the fixes are specific.
The pasta cooks separately so it stays al dente instead of drinking all the broth, a Parmesan rind simmers in the pot and gives the broth a deep, savory backbone, and the vegetables go in stages so each one lands at the right texture instead of dissolving.
It comes in at about 14 grams of protein per serving, which is honest for a vegetable-heavy soup, and it feeds six.
It’s the minestrone I make when I want something warm and substantial but not heavy, and it’s one of the best soups in my fall and winter rotation.
Why This Recipe Works

Cooking the pasta separately is what keeps the broth clear and the pasta al dente. Pasta cooked in the pot releases starch into the broth, which thickens it nicely on day one and turns it cloudy and mushy by day two. Cooking it on its own, cold-rinsing it, and storing it at the bottom of the container keeps both the pasta and the broth at their best.
The Parmesan rind is what gives the broth its depth. Simmering a Parmesan rind in the broth releases glutamates and a little fat, which turns a basic tomato broth into something savory and rounded. It’s a free ingredient if you save rinds, and it’s the single biggest upgrade to a homemade minestrone.
Staggering the vegetables is what keeps them distinct. Carrots and celery need 15 minutes to soften, while zucchini and green beans cook in 5. Adding them all at once gives you mush. Staggering them ensures each vegetable reaches its ideal texture.
Two cans of beans plus green beans make this a hearty soup rather than a light one. A single can of beans across six servings disappears into the broth. Two cans plus the green beans add substance, fiber, and plant protein.
Add the kale for the last five minutes, and add the spinach off the heat. Kale is sturdy enough to simmer briefly. Spinach is not — it wilts in seconds, and if it’s cooked, it turns dark and slimy. The distinction matters.
Ingredients That Matter

A Parmesan rind. This ingredient makes the broth taste like it simmered all day. Save the hard rinds from Parmesan wedges in a bag in the freezer and drop one in whenever you make soup. If you don’t have one, add an extra ¼ cup of grated Parmesan at the end — it won’t be quite as deep, but it works.
Fire-roasted diced tomatoes, not plain. Fire-roasted tomatoes have a subtle smokiness that plain diced tomatoes don’t, and it pairs with the Parmesan and the Italian seasoning. If you only have plain tomatoes, add ¼ teaspoon of smoked paprika.
Two cans of beans, rinsed and drained. Kidney beans are the classic choice, but cannellini, borlotti, or a mix all work. Rinse them well — the canning liquid is starchy and salty and would cloud the broth.
How to Make It

- Bring a separate pot of salted water to a boil. Cook the ditalini 1 minute shy of the package directions, drain, rinse under cold water to stop the cooking, and toss with ½ teaspoon of olive oil. Set aside.
- Heat 2 tablespoons of olive oil in a large Dutch oven over medium heat. Add the onion, carrots, and celery and cook 8 minutes, until the vegetables begin to soften and turn translucent.
- Add the garlic, tomato paste, Italian seasoning, red pepper flakes, salt, and pepper. Cook 2 minutes, stirring constantly, until the paste turns brick red and fragrant.
- Pour in the broth, fire-roasted tomatoes with their juices, rinsed beans, and the Parmesan rind. Bring to a boil, reduce the heat to low, cover, and simmer 15 minutes.
- Stir in the green beans, zucchini, and kale. Simmer uncovered 5 minutes, until the zucchini is fork-tender and the kale is bright green. If using spinach instead of kale, stir it in off the heat at the end.
- Discard the Parmesan rind. Taste and adjust salt.
- Divide the cold-rinsed pasta among 6 containers and ladle the hot soup over the top. Serve with grated Parmesan, parsley, and crusty bread.
Tips and Troubleshooting

The pasta turned mushy. It was cooked in the pot. Boil it separately, cold-rinse it, and store it under the broth.
The broth tastes thin. You skipped the Parmesan rind, or the tomatoes were watery. Use the rind and simmer uncovered for the full 15 minutes before the vegetables go in.
The vegetables turned to mush. They went in all at once. Carrots and celery first, zucchini and green beans last, greens at the very end.
It’s too salty. Broth, beans, canned tomatoes, and the Parmesan rind all carry salt. Use low-sodium broth, taste before adding any salt, and hold back on the grated Parmesan at the table.
The soup is too thick the next day. The pasta absorbed some broth. Reheat with a splash of broth or water, and store the pasta separately.
The greens turned dark and slimy. Spinach was simmered instead of stirred in off the heat. Kale simmers for 5 minutes, spinach goes in off heat.
It doesn’t taste like much. It needs a final taste for salt and a little acid. A squeeze of lemon or a splash of red wine vinegar wakes up the tomato.
Substitutions and Swaps

The pasta: Ditalini is the classic. Small shells, elbows, or orzo all work. Cook them all separately and cold-rinse.
The beans: Kidney beans are traditional. Cannellini, borlotti, or a mix all work. For a beef minestrone, brown 1 lb ground beef first, then add it with the broth.
The vegetables: Green beans, zucchini, and kale are the classic combination. Cauliflower, potato, or cabbage all work. Add harder vegetables earlier and softer ones later.
The broth: Vegetable broth keeps it vegetarian. Chicken broth works. Beef broth works for a beef minestrone.
Make it in a slow cooker: Sauté the aromatics on the stove, then transfer everything except the pasta, zucchini, green beans, and kale to a slow cooker. Cook on LOW 5 to 6 hours, add the vegetables in the last 30 minutes, and cook the pasta separately.
Make it vegan: The recipe is already vegan if you use vegetable broth and skip the Parmesan rind and grated Parmesan. Add an extra ¼ cup of nutritional yeast for depth.
Storage and Reheat
Refrigerate in an airtight container for up to 5 days, with the pasta stored separately at the bottom. Reheat covered for 90 seconds. Freeze the soup without the pasta for up to 3 months; cook fresh pasta when reheating.
Ultimate Italian Minestrone Soup
Tender carrots, celery, zucchini, green beans, and kidney beans simmered in a savory herb-infused tomato broth with a Parmesan rind, served over al dente ditalini and topped with freshly grated Parmesan — a hearty 14 g of protein per serving.
Ingredients
Aromatics & Base
- 2 tbsp extra virgin olive oil
- 1 medium yellow onion, finely diced
- 2 medium carrots, cut into ¼-inch rounds
- 2 stalks celery, finely diced
- 4 cloves garlic, minced
- 2 tbsp tomato paste
- 1 tsp Italian seasoning
- ¼ tsp red pepper flakes
- ¾ tsp kosher salt
- ½ tsp black pepper
Broth & Vegetables
- 6 cups low-sodium vegetable or chicken broth
- 1 can (14.5 oz) fire-roasted diced tomatoes, with juices
- 1 (2-inch) piece Parmesan cheese rind
- 2 cans (15 oz each) dark red kidney or cannellini beans, rinsed and drained
- 1 cup green beans, trimmed and cut into 1-inch pieces
- 1 medium zucchini, diced into ¼-inch pieces
- 2 cups Lacinato kale, stemmed and chopped (or baby spinach)
Pasta & Garnish
- 1½ cups ditalini or small shells, cooked separately
- ½ tsp olive oil, for tossing the pasta
- Freshly grated Parmesan and chopped flat-leaf parsley, for serving
- Crusty bread, for serving
Instructions
- Bring a separate pot of salted water to a boil. Cook the ditalini 1 minute shy of the package directions, drain, rinse under cold water to stop the cooking, and toss with ½ teaspoon of olive oil. Set aside.
- Heat 2 tablespoons of olive oil in a large Dutch oven over medium heat. Add the onion, carrots, and celery and cook for 8 minutes, until the vegetables begin to soften and turn translucent.
- Add the garlic, tomato paste, Italian seasoning, red pepper flakes, salt, and pepper. Cook 2 minutes, stirring constantly, until the paste turns brick red and fragrant.
- Pour in the broth, fire-roasted tomatoes with their juices, rinsed beans, and the Parmesan rind. Bring to a boil, reduce the heat to low, cover, and simmer 15 minutes.
- Stir in the green beans, zucchini, and kale. Simmer uncovered for 5 minutes, until the zucchini is fork-tender and the kale is bright green. If using spinach instead of kale, stir it in off the heat at the end.
- Discard the Parmesan rind. Taste and adjust salt.
- Divide the cold-rinsed pasta among 6 containers and ladle the hot soup over the top. Serve with grated Parmesan, parsley, and crusty bread.
Notes
Notes: Reheat covered for 90 seconds. Freezes well without the pasta for up to 3 months. Nutrition is an estimate.
Nutrition (per serving, estimated): ~320 calories, 14g protein, 52g carbs, 6g fat, 11g fiber, 720mg sodium.
FAQ
Can I cook the pasta in the soup? You can, but it’ll absorb broth and turn mushy by day two if you’re storing leftovers. Cooking it separately is what keeps both the pasta and the broth at their best.
Can I make this in a slow cooker? Yes. Sauté the aromatics on the stove, then transfer everything except the pasta, zucchini, green beans, and kale to a slow cooker. Cook on LOW 5 to 6 hours, add the vegetables in the last 30 minutes, and cook the pasta separately.
Can I make this vegetarian or vegan? It’s vegetarian with vegetable broth and Parmesan. It’s vegan if you use vegetable broth and skip both the Parmesan rind and the grated Parmesan — add ¼ cup of nutritional yeast for depth.
Can I add meat? Yes. Brown 1 lb of ground beef or Italian sausage first and add it with the broth for a beef minestrone. Shredded chicken works for a chicken minestrone.
What if I don’t have a Parmesan rind? Add an extra ¼ cup of grated Parmesan at the end. It won’t be quite as deep, but it works.
Can I freeze this soup? Yes, up to 3 months. Freeze it without the pasta — the pasta goes soft on thawing. Cook fresh pasta when reheating.
More Recipes You’ll Love
- Best Minestrone Soup Recipe
- Vegetarian Minestrone Soup
- Vegetable Minestrone Soup
- Slow Cooker Minestrone Soup
- Italian Vegetable Soup
- Easy Healthy Dinner Recipes
Closing
The separate pasta cook and the Parmesan rind are the two things that make this minestrone worth making — everything else is vegetables and broth. It’s the one I’d hand you first when you want a hearty soup that’s still vegetable-forward. Make it once, and tell me whether you went with kidney beans or cannellini.