This hearty vegetable orzo soup is bursting with flavor! Loaded with fresh vegetables, herbs, and al dente orzo pasta, it's the perfect comfort meal. Plus, it's easy to make and ideal for busy weeknights and relaxed weekend dinners!
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.