Prepare the Ingredients: Chop all vegetables (onion, carrots, celery, zucchini) into small, bite-sized pieces. Mince the garlic. Drain and rinse the beans. Set aside.
Sauté the Vegetables: Heat olive oil in a large pot over medium heat. Add the onions, carrots, celery, and zucchini. Sauté for 5-7 minutes, stirring occasionally, until the vegetables begin to soften and the onions become translucent. Add the garlic and cook for an additional 1-2 minutes until fragrant.
Add Broth and Tomatoes: Pour in the vegetable broth and diced tomatoes (with their juices). Stir in Italian seasoning, bay leaves, salt, and pepper. Bring the soup to a boil, then reduce the heat to low. Let it simmer uncovered for 20-30 minutes, allowing the flavors to meld.
Add Beans and Pasta: Add the cannellini beans and pasta to the soup. Let it simmer for another 10-15 minutes, or until the pasta is tender. Stir occasionally to ensure the pasta doesn’t stick to the bottom of the pot.
Stir in Spinach: Once the pasta is cooked, stir in the fresh spinach. Let the soup simmer for another 2-3 minutes, or until the spinach wilts into the soup.
Taste and Adjust Seasonings: Taste the soup and adjust the seasonings as needed—adding more salt, pepper, or Italian seasoning to suit your preferences.
Serve and Garnish: Ladle the soup into bowls and serve hot. For an extra burst of flavor, sprinkle with freshly grated Parmesan cheese and drizzle a little extra virgin olive oil on top.
Enjoy: Serve your homemade Minestrone Soup with crusty bread or a fresh side salad.