Soups & Stews
This authentic Toscana soup recipe brings the heart of Tuscany to your kitchen with rustic bread dippers and rich pecorino cheese. The secret lies in slow-simmered vegetables, cannellini beans, and a touch of olive oil that transforms simple ingredients into a deeply satisfying meal.
I've perfected this version after years of testing, ensuring every spoonful delivers that classic Tuscan flavor.
The beauty of this soup is its simplicity—just a few high-quality ingredients that work together to create something extraordinary. You'll start with a base of sautéed vegetables, then build layers of flavor with beans, tomatoes, and aromatic herbs.
The key is letting it simmer low and slow, allowing the flavors to meld into something truly special.
What you'll end up with is a rich, hearty soup that's perfect for chilly evenings or family gatherings. The bread dippers soak up every last drop of that savory broth, while the pecorino cheese adds a salty, tangy finish that ties everything together.
It's the kind of dish that feels like a hug in a bowl.
Serve with crusty Tuscan bread and a glass of Chianti for the full experience. This recipe is designed to be both authentic and approachable, so even if you're new to Italian cooking, you'll achieve restaurant-quality results. Let's get started!
Ingredients for authentic toscana soup
Rustic Tuscan ingredients that transform into a hearty, flavorful soup with just a few simple steps.
| Ingredient | Amount | Notes |
|---|---|---|
| Extra-Virgin Olive Oil 🫒 | ½ cup | High quality, fruity variety |
| Yellow Onion 🧅 | 1 whole | Medium size, diced |
| Carrots 🥕 | 3 medium | Peeled, sliced into rounds |
| Celery Stalk 🥬 | 3 whole | Trimmed, chopped |
| Garlic Cloves 🧄 | 4 cloves | Fresh, minced |
| Canned Cannellini Beans 🌾 | 2 cups | Drained, rinsed |
| Diced Tomatoes 🍅 | 2 cups | San Marzano preferred |
| Vegetable Broth 💧 | 4 cups | Homemade or quality store-bought |
| Fresh Rosemary 🌿 | ½ tsp | Chopped, or 1 tbsp dried |
| Fresh Sage 🌿 | ½ tsp | Chopped, or 1 tsp dried |
| Pecorino Romano Cheese 🧀 | ½ cup | Freshly grated, aged |
| Crusty Tuscan Bread 🍞 | 1 loaf | For dipping, day-old preferred |
| Kosher Salt 🧂 | 1 ½ tsp | Diamond Crystal preferred |
| Freshly Ground Black Pepper 🌶️ | ½ tsp | None |
The olive oil sets the foundation—look for extra-virgin with fruity notes at Whole Foods or your local Italian market. The San Marzano tomatoes are non-negotiable for that sweet, rich flavor (find them in the canned aisle). Fresh herbs like rosemary and sage make all the difference—if you grab dried, use one-third the amount. For the Pecorino, grate it yourself from a wedge; pre-grated gets clumpy and lacks that sharp, salty bite. The Tuscan bread? Day-old works best—it toasts up perfectly for dipping.
No San Marzano tomatoes? High-quality crushed tomatoes work in a pinch, but you'll miss that authentic sweetness. Short on fresh herbs? Dried works at one-third the amount, but toast them first in a dry pan to wake up the flavors. The vegetable broth can be homemade or store-bought—just make sure it's low-sodium if you're adding extra salt. For the bread, any crusty loaf will do—even sourdough or baguette. Want more depth? Add a splash of white wine when sautéing the vegetables.
This soup tastes even better the next day as the flavors meld. Store leftovers in the fridge for 4-5 days—the broth thickens up nicely. For freezing, portion into containers and keep for up to 3 months. The bread? Toast slices before serving for maximum crunch. Double the batch if you're feeding a crowd—it reheats beautifully.
Why You'll Love This Recipe
- Sofa-to-Stove Simple: I swear by this—just dice the onion, carrots, and celery (no fancy knife skills needed), then let the olive oil and garlic work their magic in one pot. Honestly, the hardest part is deciding when to stop stirring.
- Garlic Kiss Magic: That moment when the garlic blooms in the olive oil? Pure alchemy. The slow simmer lets the flavors meld into something deeper than takeout—earthy, warm, and impossible to resist.
- Lunchbox Hero: Pack it cold for work or reheat it for dinner—this soup travels like a champ. My kids actually eat it for school lunches (yes, even the picky ones), and it reheats better than most restaurant soups.
- Pantry Goldmine: Between us, this recipe costs next to nothing—carrots, celery, onion, and garlic are the holy grail of budget-friendly staples. Plus, leftovers taste just as good the next day, so you’re basically winning twice.
Step-by-step instructions for authentic Toscana soup
This rustic Tuscan classic comes together with simple techniques and bold flavors.
Sauté the Vegetable Base
Heat the 0.5 cup extra-virgin olive oil in a large pot over medium heat. Add the 1 whole diced yellow onion, 3 medium sliced carrots, and 3 chopped celery stalks. Cook for 8-10 minutes, stirring occasionally, until the vegetables soften and the onion becomes translucent.
Here's the thing—you want the vegetables to caramelize slightly, not burn. You'll know it's ready when they release easily from the bottom of the pot and smell sweetly aromatic. This foundational step builds the soup's depth of flavor.
Add Aromatics and Tomatoes
Reduce the heat to medium-low and stir in the 4 minced garlic cloves, 0.5 tsp chopped fresh rosemary, and 0.5 tsp chopped fresh sage. Cook for 1-2 minutes until the garlic is fragrant but not browned—burnt garlic turns bitter, and we're going for harmony here.
Add the 2 cups diced tomatoes and cook for another 3-4 minutes, stirring occasionally. The tomatoes will break down slightly, releasing their juices and intensifying their flavor. This step transforms the simple ingredients into something truly special.
Build the Soup Base
Pour in the 4 cups vegetable broth and bring the mixture to a gentle boil. Add the 2 cups drained cannellini beans, 1.5 tsp kosher salt, and 0.5 tsp freshly ground black pepper. Reduce heat to low and let it simmer for 20-25 minutes until the vegetables are tender and flavors meld together.
I like to taste the soup at this stage to adjust seasoning. The beans should be tender but not mushy, and the vegetables should be easily pierced with a fork. If it needs more salt, add it gradually—you can always adjust later, but you can't take salt out.
Finish with Cheese and Rest
Remove the pot from heat and stir in the 0.5 cup freshly grated Pecorino Romano cheese until completely melted and creamy. The cheese should dissolve smoothly into the soup, adding a rich, salty depth that's characteristic of Tuscan cooking.
Let the soup rest for 5-10 minutes before serving. This resting period allows the flavors to fully develop and the cheese to meld perfectly with the broth. The result should be a velvety, comforting soup with layers of vegetable sweetness, earthy herbs, and salty cheese.
Serve with Bread
Ladle the soup into bowls and serve immediately with slices of crusty Tuscan bread for dipping. The bread should be day-old for maximum crispiness—it soaks up the flavorful broth beautifully while providing the perfect textural contrast to the smooth soup.
Each spoonful should deliver that perfect balance of textures and flavors: tender vegetables, creamy beans, aromatic herbs, and that unmistakable Pecorino finish. This is the kind of simple, hearty dish that makes you feel like you're in a Tuscan countryside kitchen.
Pro Tips For Making Authentic Toscana Soup
- Sweat the Veggies Slow: Tuscana soup isn’t about quick caramelization—it’s about deep, mellow flavor. Once your onions, carrots, and celery hit the pot, keep the heat at a steady simmer (not a boil) for at least 10 minutes. I used to rush this, and the soup always tasted flat until I learned to let the vegetables break down into a rich, almost paste-like texture—no browning needed.
- Chop Celery Like a Pro: Skip the tiny dice—this isn’t a salad. Cut celery into ½-inch chunks (same as carrots) so it softens evenly. My grandmother swore by this, and she was right: uneven pieces mean some stay crunchy while others turn to mush. (Yes, even if you’re impatient like me.)
- Don’t Burn the Garlic: Tuscana soup relies on garlic for depth, but it’s easy to turn it bitter. Once you add the minced cloves, pull the pot off the heat for 30 seconds if it smells sharp or pungent. Let it cool slightly—this mellows the flavor without sacrificing punch. (Your future self will thank you.)
- Use Olive Oil Generously: This isn’t a diet soup—drown those vegetables in ¼ cup extra-virgin olive oil at the start. The fat carries flavor and prevents the base from tasting dry. I skip this when I’m lazy, but the dish is noticeably better when I don’t. (And no, you can’t substitute butter—this is Tuscany, not France.)
Regional styles of this recipe
Florentine Ribollita
This classic Tuscan soup from Florence replaces cannellini beans with potatoes and kale, creating a rustic, hearty variation. The name "ribollita" means "reboiled," referring to how it's traditionally reheated and thickened the next day.
Use Yukon Gold potatoes and lacinto kale for authentic texture—simmer them until tender but not falling apart. 🥔
Pappa al Pomodoro
For a lighter, tomato-based version, swap the beans for day-old Tuscan bread torn into chunks. Soak the bread in the broth as it simmers, creating a thick, creamy consistency. Add San Marzano tomatoes and a splash of white wine when sautéing the vegetables for extra depth.
This version is traditionally served with a drizzle of extra-virgin olive oil and fresh basil. 🍅
Winter Vegetable Variation
In colder months, Tuscans often add cabbage, fennel, and turnips to their soups. Sauté these vegetables with the onions and carrots, then proceed with the recipe as written. The cabbage adds a satisfying bite, while fennel brings a subtle anise-like sweetness that pairs beautifully with the Pecorino. 🥬
Herb-Forward Version
For a more aromatic experience, increase the herbs to 1 tsp fresh rosemary and 1 tsp fresh sage, or add 1 sprig of fresh thyme. Toast the herbs in the olive oil with the garlic for 30 seconds before adding the tomatoes—this intensifies their flavors dramatically.
Garnish with extra herbs before serving for a fragrant finish. 🌿
Protein Additions
While traditional ribollita is vegetarian, you can add crispy pancetta or Italian sausage for a meaty twist. Cook the meat separately until crispy, then crumble it into the finished soup.
For seafood lovers, clams or mussels steamed in the broth add a briny depth—just add them in the last 5 minutes of cooking. 🦪
Seasonal Adaptations
Spring brings asparagus and peas, while summer calls for zucchini and cherry tomatoes. Adjust the vegetable mix to reflect what's fresh at your market. In autumn, butternut squash and carrots take center stage.
The key is balancing textures—keep at least two soft vegetables (like carrots and potatoes) and one with bite (like celery or kale). 🍂
Nutrition facts
Frequently asked questions
What's the difference between this soup and traditional ribollita?
This recipe is inspired by ribollita but uses cannellini beans instead of potatoes and kale, creating a creamier texture. Traditional ribollita from Florence is thicker and often includes day-old bread for binding. Both are Tuscan classics—this version is more bean-forward while keeping that authentic Pecorino finish.
Can I make this soup in a slow cooker? Sauté the vegetables first, then transfer everything to your slow cooker. Cook on low for 6-7 hours or high for 3-4 hours until the vegetables are tender. The slow cooking enhances the flavors even more. Just
Why does my soup taste bland after resting?
Resting is crucial—it lets flavors meld! If it still tastes flat, check your salt (Tuscan cooking relies on kosher salt for depth). Add a splash of lemon juice or more Pecorino for brightness. Also ensure you used fresh herbs—dried herbs won't have the same impact. Taste as you go!
What's the best wine pairing for this soup?
A crisp Chianti or Vermentino complements the soup's hearty flavors perfectly. For white wine lovers, try a Verdicchio—its citrus notes balance the richness. Avoid heavy reds like Barolo, which can overpower the dish.
Can I substitute Pecorino with another cheese?
While Pecorino is traditional, Parmigiano-Reggiano or Pecorino Romano work in a pinch. Avoid pre-shredded cheese—it contains anti-caking agents that prevent proper melting. For a vegetarian option, use nutritional yeast (it adds a cheesy flavor without dairy).
