30-Minute Italian Vegetable Soup
This 30-minute Italian vegetable soup is a weeknight lifesaver, packed with tender vegetables, creamy beans, and a rich tomato broth.

It comes together in one pot and tastes like it simmered all afternoon, without any of the work.
Why This Soup Always Hits the Spot
The broth gets its deep savory character from a quick soffritto of onion, carrot, and celery, while canned tomatoes and a parmesan rind (if you have one) give it that long-simmered flavor in a fraction of the time.
The cannellini beans make it hearty, and a handful of spinach stirred in at the end wilts into silky ribbons. It’s the kind of soup that satisfies without weighing you down.
Ingredients

- 2 tbsp olive oil: extra virgin works well here
- 1 medium onion, diced: yellow or white
- 2 carrots, diced: no need to peel if they are scrubbed clean
- 2 celery stalks, diced: include the leaves if they are fresh
- 3 garlic cloves, minced: use the flat of your knife to smash them first
- 1 medium zucchini, diced: about 1 cup of 1/2-inch cubes
- 1 (14.5 oz) can diced tomatoes: with their juices
- 4 cups vegetable broth: low-sodium lets you control the salt
- 1 (15 oz) can cannellini beans, drained and rinsed: great Northern beans work too
- 1/2 cup ditalini pasta: or any small pasta shape
- 1 tsp Italian seasoning: a dried herb blend
- Salt and black pepper: to taste
- 2 cups fresh spinach: packed, roughly chopped if leaves are large
- Parmesan rind, optional: adds a savory backbone
- Fresh basil and grated parmesan, for serving
Variations / Substitutions
- Add sausage: Brown 1/2 pound loose Italian sausage with the onions for a meaty version.
- Make it gluten-free: Use gluten-free pasta or swap in 1/2 cup of quick-cooking brown rice.
- Dairy-free: Omit the parmesan rind and skip the cheese garnish.
- Swap the beans: Chickpeas or kidney beans are great stand-ins.
- No spinach: Chopped kale or chard will work; add them with the zucchini so they have time to soften.
If you love this, our Minestrone Soup is another classic to try.
How to Make 30-Minute Italian Vegetable Soup
Step 1: Sauté the Aromatics

Heat the 2 tablespoons olive oil in a large pot over medium heat. Add the diced onion, carrots, and celery with a pinch of salt, and cook, stirring occasionally, until softened, about 5 minutes. Stir in the minced garlic and cook for 30 seconds until fragrant.
Step 2: Build the Broth

Pour in the can of diced tomatoes with their juices, the 4 cups vegetable broth, the drained beans, the Italian seasoning, and the parmesan rind if you are using one. Bring to a boil, then reduce the heat to a steady simmer and cook for 10 minutes to let the flavors come together.
Step 3: Cook the Pasta

Add the diced zucchini and the 1/2 cup ditalini. Simmer until the pasta is tender, about 8 minutes, stirring once or twice to keep it from sticking to the bottom.
Step 4: Stir in the Greens and Serve

Remove the pot from the heat and stir in the 2 cups fresh spinach until it just wilts, about 30 seconds. Taste and adjust with salt and black pepper. Ladle into warm bowls, scatter fresh basil and grated parmesan on top, and serve hot.
A Few Notes Before You Start
- A parmesan rind is optional, but it infuses the broth with a savory depth you can’t get from salt alone. Just fish it out before serving.
- Don’t overcook the pasta. It will continue to swell in the hot soup even after you take the pot off the stove, so pull it when it still has a little bite.
- Leftovers will thicken as the pasta soaks up liquid. Add a splash of broth or water when you reheat it.
- The soup tastes even better the next day, so it’s a great make-ahead meal. Just hold off adding the spinach until you reheat it.
Cook time will vary slightly with different pasta shapes.
| Pasta Shape | Approximate Time |
|---|---|
| Ditalini | 8 minutes |
| Small shells | 10 minutes |
| Orzo | 7 minutes |
Storing Leftovers
- Refrigerate: Cool the soup completely, then transfer to an airtight container. It will keep for up to 4 days.
- Reheating: Warm gently on the stove over medium-low heat, adding a little broth or water to loosen it up. You can also microwave individual bowls in 1-minute bursts.
What to Serve with Italian Vegetable Soup
A crusty loaf of sourdough is perfect for dipping into the tomato broth. For something lighter, a simple arugula salad with lemon and olive oil cuts through the richness of the beans. A grilled cheese sandwich with provolone and a smear of pesto turns the soup into a cozy meal.
Frequently Asked Questions
Can I freeze this soup?
Yes, but it is best to freeze it without the pasta. Pasta turns mushy when thawed. Freeze the soup base, then cook fresh pasta directly in the reheated soup.
What if I don’t have Italian seasoning?
You can use 1/2 teaspoon dried oregano and 1/2 teaspoon dried basil instead.
Can I use chicken broth instead of vegetable?
Absolutely. Chicken broth will give it a slightly heartier flavor, and it works just as well.
Can I use frozen spinach?
Yes. Toss in about 1 cup of frozen chopped spinach, no need to thaw it. Let it simmer for an extra minute until heated through.

30-Minute Italian Vegetable Soup Recipe
Ingredients
Method
- Heat the olive oil in a large pot over medium heat. Add the onion, carrots, and celery with a pinch of salt; cook until softened, about 5 minutes. Stir in the garlic and cook 30 seconds.
- Add the diced tomatoes with their juices, vegetable broth, beans, Italian seasoning, and parmesan rind. Bring to a boil, then simmer for 10 minutes.
- Stir in the zucchini and ditalini; simmer until the pasta is tender, about 8 minutes.
- Remove from the heat and stir in the spinach until wilted. Season with salt and pepper. Ladle into bowls, top with basil and parmesan, and serve hot.
