A rustic, comforting Italian vegetable soup loaded with seasonal vegetables, beans, pasta, and a rich tomato broth. Endlessly adaptable and perfect for using up whatever vegetables you have on hand.

Heat 3 tablespoons olive oil in a large pot or Dutch oven over medium heat. Add 1 diced onion, 2 diced carrots, and 2 diced celery stalks (the classic Italian soffritto). Cook for 6-8 minutes, stirring occasionally, until the vegetables are softened. Add 3 cloves minced garlic and cook for 1 minute until fragrant.
Stir in 2 tablespoons tomato paste and cook for 1 minute to caramelize slightly. Add 1 can diced tomatoes (with their juice), 6 cups vegetable broth, 2 teaspoons dried Italian seasoning, 1 bay leaf, 1 teaspoon salt, and 1/2 teaspoon black pepper. Stir well and bring to a boil over high heat.
Once boiling, add 1 diced zucchini, 1 cup green beans (cut into 1-inch pieces), and 1 can drained cannellini or kidney beans. Reduce heat to medium-low and simmer, partially covered, for 20 minutes until all the vegetables are tender.
Add 1 cup small pasta (ditalini, elbow, or small shells) to the soup. Stir well and cook for 8-10 minutes, or according to package directions, until the pasta is al dente. Stir occasionally to prevent sticking.
Stir in 2 cups roughly chopped fresh spinach or kale. Cook for 2-3 minutes until wilted. Remove from heat and discard the bay leaf. Stir in 1/4 cup chopped fresh basil and 2 tablespoons chopped fresh parsley. Taste and adjust seasoning with more salt and pepper if needed.
Ladle the minestrone into bowls. Drizzle with extra virgin olive oil and sprinkle with grated Parmesan cheese if desired. Serve hot with crusty Italian bread for dipping.
Turn what you already have in your fridge into delicious meals. Our AI-powered generator creates personalized recipes from your ingredients.
Discover more delicious recipes similar to what you're cooking
Join our newsletter and discover new favorites delivered straight to your inbox. No spam, just tasty inspiration.
Be the first to review this recipe!