Minestrone soup is the kind of dish that tastes like someone spent all day in the kitchen, even though you’ll have it on the table in 45 minutes. The real trick is building flavor in layers, starting with a golden soffritto of onion, carrot, and celery, then letting the broth, beans, and pasta simmer together until they’re all speaking the same language. Most home cooks either end up with a watery broth or overcooked pasta that turns to mush. This recipe keeps both in balance.

What Makes This Recipe Special
- Soft, sweet base: The onion, carrot, and celery cook low and slow for 8 minutes before anything else goes in, so the broth starts with real depth instead of raw vegetable bite.
- Tender pasta, not mushy: The pasta goes in during the last 10 minutes, so it stays intact and absorbs just enough broth to taste like part of the soup, not an afterthought.
- Ready in 45 minutes: No overnight soaking, no long simmering, just one pot and a straightforward timeline that fits a weeknight.
- Built to feed four: This is a full, satisfying bowl that works as a main course with crusty bread, not a side dish.
What You Will Need
Minestrone soup is built on pantry staples and one fresh onion, nothing fancy or hard to find.
- Extra-virgin olive oil (2 tablespoons / 30 ml): The fat that carries flavor into the broth and keeps the soffritto from sticking. Use something you’d actually taste on bread; cheap oil tastes thin here.
- Medium yellow onion: The foundation. Yellow onions have enough natural sugar to sweeten the broth without overpowering it. Dice it into roughly ½-inch pieces so it softens evenly.
- Medium carrots (2), chopped: They add sweetness and body. Chop them into pieces about the same size as the onion so everything cooks at the same pace.
- Celery ribs (2), thinly sliced: The quiet backbone of the soup. Celery brings a subtle earthiness that ties the whole thing together.
- Sea salt and black pepper: Season as you go, not all at the end. This builds flavor into each layer.
- Garlic cloves (3), grated: Grating instead of mincing means the garlic dissolves into the broth rather than sitting in chunks. Add it after the soffritto so it doesn’t burn.
- Canned diced tomatoes (28-ounce / 800 g can): Canned tomatoes are reliable year-round and already broken down, so they thicken the broth naturally. Don’t drain them.
- Cooked beans (1½ cups / 360 ml), white or kidney: Canned beans work perfectly here, just rinse them well to remove the starchy liquid. They add protein and creaminess without any fuss.
- Fresh green beans (1 cup / 150 g), chopped: They stay bright and slightly firm, which gives the soup texture contrast. Chop them into 1-inch pieces.
- Vegetable broth (4 cups / 960 ml): Use low-sodium so you can control the salt. The broth is the canvas; don’t let it overpower the vegetables.
- Bay leaves (2): They add a subtle herbal note. Remove them before serving.
- Dried oregano and thyme (1 teaspoon each): These two herbs are the backbone of the seasoning. Dried herbs work better here than fresh because they distribute evenly through the long simmer.
- Small pasta (¾ cup / 75 g), elbows, shells, or orecchiette: Small shapes hold broth better than long pasta. Don’t use a delicate pasta like angel hair; it falls apart.
- Fresh parsley (½ cup / 15 g), chopped: Stir it in at the end for brightness and color. It’s not decoration, it’s flavor.
- Red pepper flakes and Parmesan cheese, optional: Let each person finish their own bowl. Some like heat, some like cheese; both are welcome.
How to Make Hearty Minestrone Soup Step by Step

This soup comes together in three clear stages: building the base, simmering the vegetables and beans, then finishing with pasta and fresh herbs.
Build the Soffritto
Heat the olive oil in a large pot over medium heat. Add the diced onion, chopped carrots, sliced celery, 1 teaspoon of sea salt, and several grinds of black pepper. Stir occasionally and let them cook for 8 minutes, until the onion turns translucent and the carrots begin to soften at the edges. You’re not looking for color here, just tenderness and the smell of caramelizing vegetables. This is where the soup’s flavor foundation lives.
Simmer the Broth and Vegetables
Add the grated garlic and stir for about 30 seconds until fragrant. Pour in the canned tomatoes (juice and all), the drained beans, green beans, vegetable broth, bay leaves, oregano, and thyme. Stir once to combine, then cover the pot and bring it to a gentle simmer. Let it bubble quietly for 20 minutes. The vegetables will soften, the beans will warm through, and the broth will deepen in color and taste.
Cook the Pasta and Finish
Stir in the pasta and cook uncovered for 10 more minutes, stirring occasionally so the pasta doesn’t stick to the bottom. The pasta should be tender but still hold its shape, not soft enough to break apart when you stir. Taste the soup and add more salt and pepper if it needs it. Remove the bay leaves. Stir in the fresh parsley just before serving. Ladle the soup into bowls and let each person add red pepper flakes and Parmesan to their liking.
Tips, Variations, and Swaps

- Swap the beans: Cannellini, chickpeas, or black beans all work. Use whatever you have on hand. The soup will taste slightly different each time, which is part of its charm.
- Add spinach or kale: Stir in a handful of chopped greens during the last 2 minutes of cooking. They’ll wilt into the broth and add iron and color without changing the flavor profile.
- Make it heartier: Add diced zucchini or diced potatoes (about ¾ cup / 100 g) along with the green beans. They’ll cook in the 20-minute simmer and make the soup more filling.
- Use homemade broth: If you have it, use it. The soup will taste richer and more complex. The timing stays the same.
Serving, Storage, and Meal Prep
Minestrone soup is one of those dishes that tastes even better the next day, once the flavors have had time to meld.
- Serve it now: Ladle it hot into bowls with crusty bread on the side. A simple green salad and a glass of white wine turn this into a complete meal.
- Store it in the fridge: Keep leftovers in an airtight container for up to 4 days. The pasta will continue to absorb broth, so the soup gets thicker as it sits. Thin it with a splash of broth or water when you reheat it.
- Freeze it: Cool the soup completely, then freeze it in portions for up to 3 months. Thaw it overnight in the fridge and reheat gently on the stovetop. Add fresh parsley after reheating so it stays bright.
FAQs
Can I make this soup ahead?
Yes. Make it through the pasta step, cool it completely, then refrigerate it. The pasta will soften as it sits, so if you’re storing it for more than a day, cook the pasta separately and add it when you reheat. Or skip the pasta entirely, store the broth and vegetables, then cook fresh pasta when you’re ready to eat.
What if I don’t have fresh green beans?
Use frozen green beans instead, they thaw and cook in the same time. Or skip them and add an extra ½ cup (75 g) of diced zucchini or diced tomatoes. The soup will still be complete.
Can I use dried herbs instead of fresh parsley at the end?
Dried parsley won’t give you the same brightness. If you don’t have fresh, just skip it. The soup is still good without it. Fresh herbs are worth a trip to the store if you can make it.
Why is my pasta mushy?
You’re either cooking it too long or using a delicate pasta shape. Stick to small, sturdy shapes like elbows or shells, and add them only in the last 10 minutes. If you like softer pasta, cook it for the full 10 minutes; if you like it firmer, check it at 8 minutes and pull it off the heat when it’s just tender.

Hearty Minestrone Soup Recipe
Ingredients
Method
- Heat oil in a large pot over medium heat. Add onion, carrots, celery, salt, and pepper. Cook 8 minutes until softened.
- Add garlic; stir 30 seconds until fragrant.
- Add tomatoes, beans, green beans, broth, bay leaves, oregano, and thyme. Cover and simmer 20 minutes.
- Stir in pasta. Cook uncovered 10 minutes, stirring occasionally, until tender but firm.
- Remove bay leaves. Adjust salt and pepper. Stir in parsley. Serve with optional red pepper flakes and Parmesan.
Notes
- Swap white beans for cannellini, chickpeas, or black beans.
- Add a handful of spinach or kale during the last 2 minutes of cooking.
- Store leftovers in the fridge for up to 4 days; thin with water or broth when reheating.
Final Thoughts
Minestrone soup is proof that simple ingredients and a little patience create something that feels generous and whole. Make this when you want to feed people without fuss, or when you need something warm and grounding on a cold night. It’s the kind of soup that brings everyone to the table.
