The first time I had ribollita (the best Italian bread soup EVER) I was in Lucca, one of my favorite Tuscan towns, eating everything I could get my hands on.
This is another one of those recipes you can add/subtract ingredients based on what you’ve got in the fridge, but DO NOT omit the Parmesan rind.
¼ cup extra-virgin olive oil, plus some for drizzling on bread
1 onion, chopped
1-2 carrots, chopped
3-4 stalks of celery, chopped
4 ounces pancetta, chopped (can leave out if making vegetarian)
1 clove minced garlic
1 teaspoon salt (or to taste)
1 teaspoon freshly ground black pepper
1 bay leaf
1 tablespoon tomato paste
1 (15 oz) can diced tomatoes (I use San Marzano)
1 bunch chopped fresh greens (kale, chard or spinach)
1 (15 oz) can of cannelloni beans (in this recipe I prefer not to rinse them, but you can if you’re worried about sodium intake)
4 cups chicken or vegetable stock
1 (3-inch) piece Parmesan rind (KEY FLAVOR INGREDIENT!!!)
1 whole wheat baguette, cut into bite-sized pieces
Grated Parmesan, for serving
Heat the oil in a large pot over medium-high heat. Add the onion, carrot, celery, pancetta, garlic, salt, and pepper. Cook until the onion is golden brown and the pancetta is crisp, about 7 minutes. Add tomato paste and stir until dissolved. Add tomatoes and stir, scraping up the brown bits at the bottom of the pan. Add the greens, beans, stock, bay leaf, and Parmesan rind. Bring the soup to a boil, reduce heat and simmer for 1 hour.
In a 350-degree oven, toast bread pieces for 10-12 minutes. Add to soup and let simmer for another 15 minutes. Remove bay leaf and Parmesan rind before serving. Sprinkle each bowlful with grated cheese.