This hearty vegetable orzo soup is bursting with flavor! Loaded with fresh vegetables, herbs, and al dente orzo pasta, it's the perfect cozy meal. Plus, it's easy to make and ideal for busy weeknights and relaxed weekend dinners!
Save This Recipe! 💌
In my Italian family, love is a hearty, nutritious bowl of homemade soup. This one-pot, vegetable orzo soup is a staple in my house, and as a nurse practitioner, I love that it's a delicious way to serve a veggie-forward meal. The soup is so full of flavor, it's hard to believe it's vegetarian. Even my meat-loving husband is impressed!
This soup has incredible depth of flavor thanks to a few classic, Italian cooking secrets: building layers of taste and texture, using fresh herbs, and ensuring that each ingredient contributes richly to the dish. The soup is easy to make and freezes well, making it perfect for meal prep. You'll have a hearty, comforting meal ready whenever you need it!
I love to serve orzo vegetable soup with a fresh side, like spinach and arugula salad or caprese salad with burrata. I always have a slice of bread to dip into the broth, with stirato bread and Ligurian focaccia being favorites. An Italian dessert like pignoli cookies and salted caramel budino are the perfect end to the meal!
For more hearty soups, check out this authentic Italian pasta e fagioli recipe. It's the ultimate comfort meal, made with hearty beans and al dente pasta simmered in a rich broth. You'll also love this chicken minestrone soup, an easy, one-pot meal that is robust and full of flavor!
Jump to:
Ingredients
Ingredient Notes
- Orzo: also called "risoni," it's my favorite pasta for vegetable soup. The small rice shape absorbs the broth, packing flavor into each bite. Orzo also adds a hearty texture that complements the fresh vegetables and herbs.
- Carrot, celery, onion, and zucchini: this mix of vegetables is the perfect blend of sweet, savory, and earthy flavor. I dice them so they cook evenly and are well distributed. This gives the soup consistent texture and flavor in every spoonful.
- Fresh oregano, basil, and parsley: using fresh herbs adds a vibrant flavor and aroma. It only takes a few minutes to chop them up, and I promise it's worth it!
- Baby spinach: the tender leaves cook quickly and evenly without becoming tough. They require minimal prep and can be added straight to the soup without chopping. They're also a great source of iron, vitamins, and fiber!
- San Marzano tomatoes: I recommend DOP certified San Marzano tomatoes grown in Italy, because they are slightly sweet, less acidic, and add complex flavor to the soup. They come whole in a can and I crush them with my hands before cooking. I usually buy a 28-ounce can, using half for this recipe and the remaining for pasta e fagioli or Ligurian focaccia. To verify certification, look for the red and yellow DOP stamp on the label. If unavailable, you can use San Marzano-style tomatoes (grown with a similar seed but in a different region), or regular canned tomatoes.
- Vegetable broth: I prefer using a vegetable broth made with simple ingredients, avoiding those that contain artificial flavors and preservatives. This can be hard to find! Kettle and Fire organic vegetable broth is one of my favorites.
- Parmigiano Reggiano: this adds umami to the broth, an important step when making a vegetarian soup. Like with the San Marzano tomatoes, I recommend using DOP certified Parmigiano Reggiano. It's aged at least 12 months, with a complex nutty and tangy flavor. You don't have to go somewhere fancy – I get mine from Costco! If unavailable, you can substitute with regular parmesan or Pecorino Romano.
- Cannellini beans: these add a creamy texture, subtle nutty flavor, and a hearty dose of protein and fiber. I use canned beans for convenience, ensuring that the beans are the only ingredient, and avoiding products with artificial preservatives. If you prefer using dried beans, I recommend cooking them beforehand until they are tender. If you don't have cannellini beans on hand, you can substitute with another kind, like borlotti, garbanzo (chickpeas), or pinto beans.
See recipe card for quantities.
Substitutions and Variations
- Use a different pasta: instead of orzo, you could use a small pasta of your choice. Ditalini, farfalline (small butterflies), conchigliette (small shells), or even spaghetti broken into 1-inch pieces are great options.
- Use dried herbs instead: you can substitute the fresh herbs with ⅓ the amount of dried. You will need to add them earlier in the cook time so they have time to build flavor. The notes section of the recipe card will guide you on how to do this.
- Add protein: you can add cooked meat for extra protein. Chopped or ground chicken, turkey, or beef would be delicious. Sausage is another great option!
- Switch up the broth: you can substitute the vegetable broth with chicken or beef broth. I love using bone broth, a favorite ingredient that builds incredible flavor, as seen in my authentic pasta fagioli, tagliatelle bolognese, and mushroom pappardelle recipes.
- Add different veggies: it's easy to customize this recipe with veggies of your choice! It's great for cleaning out the fridge, or using up that end of summer produce. Chopped kale, bell peppers, or green beans would be delicious.
- Make vegan: omit the Parmigiano Reggiano for a vegan version. You can add a bit of nutritional yeast for umami.
Instructions
Step 1: heat the olive oil in a large pot or Dutch oven over medium heat. Add the carrots, celery, and onion. Cook for 7 to 10 minutes, stirring occasionally until the vegetables are softened and the onion translucent. Add the garlic and cook for 1 more minute until fragrant (image 1a). Then stir in the tomato paste, cooking for 1 to 2 minutes until it caramelizes and darkens (image 1b).
Step 2: stir in the San Marzano tomatoes and vegetable broth. Then bring to a gentle boil (image 2).
Step 3: stir in the cannellini beans and zucchini. Reduce the heat and simmer for 15 minutes uncovered, stirring occasionally as the flavors meld and develop (image 3).
Step 4: stir in the orzo and continue to simmer uncovered for about 7 minutes until it's cooked al dente (image 4). Stir often, using a wooden spoon to gently scrape the bottom of the pot to keep the orzo from sticking. Monitor the consistency and add more broth as needed to reach your desired thickness.
Step 5: a couple of minutes before the orzo is done, stir in the fresh spinach, cooking for 2 minutes until wilted. Then stir in the fresh oregano, basil, and parsley (image 5).
Step 6: remove the pot from the heat. Stir in the Parmigiano Reggiano until melted. Then season with kosher salt and black pepper to taste. Ladle the soup into bowls and garnish with more Parmigiano Reggiano and fresh parsley (image 6). Serve and enjoy!
Storage, Reheating, & Make Ahead
- Storage: leftover soup can be stored in an airtight container in the refrigerator for up to 3 days or in the freezer for up to 3 months. If frozen, thaw overnight in the refrigerator before reheating.
- Reheating: you can reheat the leftovers in a pot over medium-low heat. Or you can microwave them in a covered, microwave safe bowl, using 30-second intervals. You may need to add more broth to achieve your desired consistency. All leftovers should be reheated to 165°F (74°C) throughout.
- Make ahead: you can make the soup ahead of time, following the recipe as written. Follow the storage and reheating instructions above.
For more helpful tips on how to handle leftovers safely, check out this USDA Leftovers and Food Safety guide.
Expert Tips
- Cook the orzo in the soup so it absorbs the flavorful broth. As it cooks, the orzo releases starches that thicken the soup, making it heartier.
- Use fresh herbs to maximize flavor. Add them at the end of the cooking time, as they only need a minute to soften and release their flavors. This prevents them from becoming bitter from overcooking.
- Begin by cooking the harder vegetables (carrot, celery, and onion) first so they have time to soften and develop flavor. Add the softer zucchini and spinach later on since they need less cooking time.
FAQ
The secret to making a flavorful vegetable soup is using high quality ingredients and building flavor in steps. This recipe is incredibly flavorful because the vegetables are first sautéed to release their natural sweetness and develop a rich base. By layering flavors–from caramelizing the tomato paste to adding fresh herbs and finishing with rich Parmigiano Reggiano–each ingredient enhances the dish. The end result is a hearty vegetable orzo soup with remarkable flavor and complexity!
Although the amount of vegetable broth should be more than enough for the orzo, I always recommend having extra on hand, gradually pouring more in until you reach your desired thickness. You should also keep the soup at a simmer (not boiling) so the orzo can cook evenly without absorbing too much excess broth.
Related
Looking for more hearty Italian soups? Try these recipes:
Pairing
These are my favorite dishes to serve with vegetable orzo soup:
Did you make this recipe? Leave a star rating and comment below! Subscribe to my newsletter for delicious recipes straight to your inbox!
Recipe
Vegetable Orzo Soup
Save This Recipe! 💌
Ingredients
- 2 tablespoons extra virgin olive oil
- 2 carrots (peeled and diced)
- 2 stalks celery (two ribs; diced)
- 1 medium yellow onion (diced)
- 2 cloves garlic (minced)
- 2 tablespoons tomato paste
- 14 ounces San Marzano tomatoes (crushed)*
- 6 cups vegetable broth (plus more as needed)*
- 1 (15-ounce) can cannellini beans (drained and rinsed)*
- 1 zucchini (diced)
- 1 cup orzo *
- 3 cups fresh baby spinach
- 1 tablespoon fresh oregano (chopped)*
- 1 tablespoon fresh basil *
- 1 tablespoon fresh parsley (chopped; plus more for garnish)*
- kosher salt (to taste)
- black pepper (to taste)
- ½ cup Parmigiano Reggiano (grated; plus more for garnish)*
Instructions
- Cook the vegetables and tomato paste: in a large pot or dutch oven, heat the olive oil over medium heat. Add the carrots, celery, and onion. Cook for 7 to 10 minutes, stirring occasionally until the vegetables are softened and the onion is translucent. Add the garlic and cook for an additional minute until fragrant. Then stir in the tomato paste and cook for 1 to 2 minutes until it caramelizes and darkens slightly.
- Add the San Marzano tomatoes and broth: stir in the San Marzano tomatoes and vegetable broth. Then bring to a gentle boil.
- Add the beans, zucchini, and simmer: stir in the cannellini beans and zucchini. Reduce the heat and simmer uncovered for 15 minutes, stirring occasionally as the flavors develop.
- Cook the orzo: stir in the orzo and continue to simmer uncovered for about 7 minutes, until the orzo is cooked al dente. Stir often, gently scraping the bottom of the pot with a wooden spoon to prevent the orzo from sticking. Monitor the consistency and add more vegetable broth as needed to reach your desired thickness.
- Add the spinach and fresh herbs: a couple of minutes before the orzo is done, stir in the fresh spinach. Cook for an additional 2 minutes until the spinach is wilted. Then stir in the fresh oregano, basil, and parsley.
- Add the Parmigiano Reggiano, seasoning, and serve: remove the pot from the heat. Stir in the Parmigiano Reggiano until melted. Season with kosher salt and black pepper to taste. Ladle the soup into bowls and garnish with more fresh parsley and Parmigiano Reggiano. Serve and enjoy!
Video
Notes
- San Marzano tomatoes: these come whole in a can and I crush them with my hands before cooking. I usually buy a 28-ounce can, using half for this recipe and the remaining for pasta e fagioli or Ligurian focaccia. If unavailable, you can substitute with San Marzano-style tomatoes or regular canned tomatoes.
- Vegetable broth: you can substitute with bone broth or regular chicken or beef broth.
- Cannellini beans: you can use a different bean instead, or omit them. Borlotti, garbanzo (chickpeas), or pinto beans are great options. If using dried beans, I recommend cooking them beforehand until tender.
- Orzo: you can substitute with a pasta of your choice. Small shapes that fit on a spoon work best, like ditalini, farfalline, small shells, or spaghetti broken into 1-inch pieces.
- Fresh oregano, basil, parsley: you can use dried herbs instead, substituting with 1 teaspoon each. Or you can use 1 tablespoon of Italian seasoning. Any dried herbs should be added in Step 2 of the recipe so they have time to soften and release their flavors.
- Parmigiano Reggiano: if unavailable, you can use regular parmesan or Pecorino Romano.
- Switch up the vegetables: you can substitute or add veggies of your choice. Chopped kale, bell peppers, or green beans would be delicious. Harder vegetables should be added in Step 1, softer vegetables in Step 3, and leafy greens in Step 5 of the recipe.
- Add protein: you can add pre-cooked meat at the end of the cooking time. Chopped or ground chicken, turkey, or beef would be delicious. Sausage would be great too!
- Make vegan: omit the Parmigiano Reggiano. You can add nutritional yeast to taste for umami.
- Storage: leftovers can be stored in an airtight container in the refrigerator for up to 3 days or in the freezer for up to 3 months. If frozen, thaw overnight in the refrigerator before reheating.
- Reheating: you can reheat the leftovers in a pot over medium-low heat. Or you can microwave them in a covered, microwave-safe bowl in 30-second increments. Add more broth as needed to reach your desired consistency. Reheat until 165°F (74°C) throughout.
- Make ahead: this soup is perfect for meal prep! Make the recipe as written. Then follow the storage and reheating instructions above.
Nutrition
The provided nutrition and storage information is estimated. Accuracy is not guaranteed.
See our Disclaimer for more information.
Maria D'Errico says
I really enjoyed creating this recipe for you and I hope you love it as much as I do! I love this soup because it's veggie forward, yet full of complex flavor. I'd love to hear what you think about it!