This is a great vegetarian anytime-of-the-year minestrone that you can customize to what is in season or what you like in your soup. The vegetables and herbs are easily swappable in the same amounts as listed in the recipe. I love adding a little bit of brightness and freshness to any soup with a pistou, the French version of a pesto, here with the nuttiness of toasted walnuts.
For the soup: Heat 2 tablespoons of the oil in a large heavy pot over medium-high heat. Cook the mushrooms, undisturbed, until browned underneath, about 2 minutes. Toss and continue to cook, tossing occasionally, until browned on both sides and tender, 2 to 3 minutes. Season with salt and pepper and transfer to a medium bowl.
Heat the butter and remaining 2 tablespoons oil in the same pot over medium-high heat. Add the onions, garlic, cabbage, squash, tomatoes, green beans, 1 tablespoon salt and 1/4 teaspoon pepper and cook, stirring occasionally, until the vegetables are softened but not browned, 6 to 8 minutes. Add the mushrooms and 8 cups water, bring to a boil, then reduce to a simmer and cook until the vegetables are tender, 5 to 10 minutes. Add the garbanzo beans and cook until warmed through, about 3 minutes. Season if necessary.
Meanwhile, make the pistou: Pulse the garlic, parsley, basil, pecans and 2 tablespoons of the oil in a food processor until finely chopped. Transfer to a small bowl and stir in the Parmesan, grapefruit zest, crushed red pepper and remaining 2 tablespoons oil; season with salt.
Divide the soup among bowls and top with the pistou.