This Vegan Italian Penicillin Soup is a plant-based take on the classic comfort soup, packed with carrots, celery, fennel, zucchini, and cherry tomatoes simmered in a fragrant herb-infused broth. Ditalini pasta and chickpeas add heartiness, while a finishing squeeze of lemon and fresh parsley brighten every spoonful.
Ready in just 45 minutes, this one-pot meal is naturally dairy-free and nut-free, making it perfect for weeknight dinners or when you need a nourishing, soul-warming bowl. Serve with crusty bread for a complete, satisfying meal.
The radiator in my apartment clicked and groaned through the entire month of January, and somewhere around week three I stopped fighting it and just started making soup. This particular pot happened because I had half a fennel bulb rolling around the crisper drawer and a bag of ditalini that had migrated behind the oatmeal. What came together was something between minestrone and the chicken soup my grandmother used to swear by, only completely plant based and somehow even more comforting.
I brought a thermos of this to my friend Elena when she was recovering from the flu, and she texted me three days later asking if I could bring more, except this time with extra bread for dunking.
Ingredients
- Olive oil: Two tablespoons is enough to soften everything without making the soup greasy, and a good quality one adds a grassy depth you will notice.
- Yellow onion: One large, diced small so it melts into the broth rather than floating in obvious chunks.
- Garlic: Three cloves, minced finely, because this soup relies on aromatics to build its healing character.
- Carrots: Two large ones, diced, bringing natural sweetness and that classic penicillin soup familiarity.
- Celery: Two stalks, diced, for that quiet savory backbone that holds everything together.
- Fennel bulb: Optional but honestly it is the secret ingredient here, adding a faint anise sweetness that makes people ask what is in this.
- Zucchini: One, diced, and it practically dissolves into the broth, thickening it beautifully.
- Cherry tomatoes: One cup, halved, for little bursts of acidity scattered throughout.
- Dried oregano, thyme, and basil: This trio does the heavy lifting for the Italian flavor profile, so do not skip any of them.
- Bay leaf: Just one, but remember to fish it out before serving or someone will bite into it and make a face.
- Red pepper flakes: Half a teaspoon is optional, but the gentle warmth behind each spoonful is worth it.
- Salt and black pepper: To taste, and taste often, because broth needs your attention.
- Vegetable broth: Eight cups of a good quality broth, because this is the foundation and a bland one will show.
- Small pasta: Three quarters of a cup of ditalini or small shells, and use gluten free if that is what you need.
- Chickpeas: One can, drained and rinsed, adding protein and a creaminess that makes the soup feel substantial.
- Kale or spinach: Two cups chopped, stirred in at the end so it stays vibrant and slightly toothsome.
- Lemon juice: From half a lemon, added off the heat, which is the move that transforms the whole pot.
- Fresh parsley: Two tablespoons chopped, because a finishing sprinkle of green makes everything taste more intentional.
Instructions
- Wake up the aromatics:
- Heat the olive oil in a large pot or Dutch oven over medium heat until it shimmers, then add the diced onion and cook for about three minutes until it turns translucent and sweet smelling.
- Build the vegetable base:
- Stir in the garlic, carrots, celery, and fennel, and let everything cook together for five to seven minutes until the vegetables soften at the edges and your kitchen smells like an Italian trattora.
- Add the tender ones:
- Toss in the zucchini and cherry tomatoes, giving them two minutes to warm through and release a little of their moisture.
- Bloom the herbs:
- Sprinkle in the oregano, thyme, basil, bay leaf, red pepper flakes, salt, and pepper, and stir everything together so the dried herbs toast slightly in the oil before the liquid goes in.
- Simmer and develop:
- Pour in the vegetable broth, bring it to a boil, then reduce the heat, cover the pot, and let it simmer gently for ten minutes so the flavors have time to mingle properly.
- Cook the pasta:
- Stir in the pasta and chickpeas, then simmer uncovered for eight to ten minutes until the pasta is tender but still has a slight bite.
- Finish with greens:
- Add the kale or spinach and cook for two more minutes until it wilts down and turns a gorgeous deep green.
- The bright finish:
- Remove the pot from the heat, stir in the lemon juice and parsley, taste for salt, and serve hot with crusty bread if you have it.
There is something about carrying a steaming bowl of this soup to the couch, wrapped in a blanket, that makes whatever is bothering you feel at least slightly more manageable.
A Note on Broth Quality
I learned the hard way that not all vegetable broths are created equal, and the ones that taste like diluted dishwater will drag this entire soup down with them. Taste your broth before you pour it in, and if it lacks depth, simmer it with an extra garlic clove and a pinch of salt for five minutes first.
Making It Your Own
The beauty of this recipe is how forgiving it is, and you can swap vegetables based on whatever is wilting in your refrigerator without ruining anything. A spoonful of vegan pesto stirred in at the end adds a richness that feels almost indulgent, and extra lemon juice makes it sing on warm days when you still want soup.
Storing and Reheating
This soup keeps beautifully in the refrigerator for up to four days, though the pasta will continue to swell and soak up broth, so add a splash of water when reheating.
- Freeze individual portions without the pasta for the best texture later.
- A splash of fresh lemon juice after reheating brings back the brightness that fades overnight.
- Always store in glass if possible, because tomato and broth stain plastic containers stubbornly.
Some recipes you make because you have to, and some you make because they remind you that feeding yourself well is a quiet, powerful act of care. This one lives firmly in the second category.
Recipe Q&A Section
- → Can I make this soup gluten-free?
-
Yes, simply substitute the small pasta with your favorite gluten-free variety. Ditalini and small shells are widely available in gluten-free versions made from rice, corn, or quinoa flour. Just check the cooking time on the package, as gluten-free pasta may cook faster or slower than traditional wheat pasta.
- → What can I substitute for fennel in this soup?
-
If you don't have fennel on hand or prefer its flavor, you can substitute with an equal amount of diced celery root, additional celery, or even a half cup of diced leek. Each option will contribute its own subtle flavor while maintaining the soup's hearty, vegetable-forward character.
- → How should I store and reheat leftovers?
-
Store cooled soup in an airtight container in the refrigerator for up to 4 days. When reheating, add a splash of vegetable broth or water, as the pasta tends to absorb liquid over time. Gently warm on the stovetop over medium heat or in the microwave in 1-minute intervals until heated through.
- → Can I freeze this soup?
-
You can freeze this soup, but for best results, consider freezing the broth and vegetable portion without the pasta. Cooked pasta can become mushy when frozen and thawed. When ready to serve, thaw the base, reheat, and cook fresh pasta directly in the simmering broth until al dente.
- → What pasta shapes work best in this soup?
-
Small pasta shapes like ditalini, small shells, orzo, acini di pepe, or stelline work beautifully because they distribute evenly throughout the broth and are easy to eat with a spoon. Avoid large shapes like penne or fusilli, which can overwhelm the delicate balance of vegetables and broth.
- → How can I add more protein to this soup?
-
Beyond the chickpeas already included, you can stir in a cup of cooked white beans like cannellini or navy beans. For a soy-based option, cubed firm tofu or edamame work well. You could also serve the soup topped with a dollop of vegan pesto stirred into a scoop of nutritional yeast for a protein-rich finish.