Soups & Stews
This bacalao soup recipe transforms humble ingredients into a Mediterranean masterpiece where crispy celery crowns float atop a velvety lemon-herb broth. The secret lies in properly soaking the salt-cured bacalao—a process that unlocks its delicate, briny sweetness while removing excess sodium.
I developed this version after years of perfecting the balance between tender fish, aromatic vegetables, and bright citrus notes that define coastal Spanish cuisine.
What makes this recipe special is the two-stage cooking method: first simmering the broth with potatoes and peppers until tender, then adding the bacalao just long enough to flake beautifully. The crispy celery crowns—achieved through a quick pan-fry—add a satisfying textural contrast that elevates every spoonful.
This isn't just soup; it's a complete meal with hearty potatoes, sweet peppers, and fragrant herbs that transport you to a seaside trattoria.
The result is a deeply flavorful soup where each component plays its part—tender bacalao, creamy potatoes, sweet peppers, and that signature crispy celery crown that breaks through the velvety broth. The lemon-herb velouté ties everything together with its bright, aromatic depth.
This is comfort food at its finest, perfect for chilly evenings or when you crave something both nourishing and elegant.
Serve with crusty bread to soak up every last drop of that rich, herby broth. The leftovers reheat beautifully, making it ideal for meal prep or feeding a crowd. Let's create this Mediterranean classic that's sure to become a family favorite.
Ingredients for bacalao soup
Sixteen ingredients transform into a Mediterranean masterpiece where crispy celery crowns float atop velvety lemon-herb broth.
| Ingredient | Amount | Notes |
|---|---|---|
| Salt-Cured Bacalao 🐟 | 1 ½ lb | Properly soaked per package instructions |
| Yellow Onions 🧅 | 2 whole | Medium, thinly sliced |
| Red Bell Peppers 🍅 | 2 whole | Medium, sliced into strips |
| Celery Stalks 🧅 | 4 whole | Thick, for crispy crowns |
| Russet Potatoes 🥔 | 2 lb | Yukon gold preferred, cubed |
| Extra-Virgin Olive Oil 🫒 | ¾ cup | High-quality, fruity |
| Fresh Lemon Juice 🍋 | ½ cup | From 2-3 lemons |
| Garlic Cloves 🧄 | 6 cloves | Fresh, minced |
| Fresh Thyme 🌿 | ¼ cup | Stems removed, chopped |
| Fresh Parsley 🌿 | ¼ cup | Flat-leaf, chopped |
| Vegetable Broth 💧 | 6 cups | Homemade or quality store-bought |
| Heavy Cream 🥛 | ½ cup | Full-fat for richness |
| Salt 🧂 | 2 tsp | Diamond Crystal preferred |
| Ground Black Pepper 🌶️ | 1 tsp | Freshly ground |
| All-Purpose Flour 🌾 | ¼ cup | For crispy celery coating |
The bacalao is the foundation—look for high-quality salt-cured fillets at specialty markets or well-stocked grocery stores like Whole Foods. Proper soaking (8-12 hours in cold water, changing water 2-3 times) is non-negotiable to remove excess salt and achieve that delicate, briny sweetness. For the crispy celery crowns, thick stalks with fibrous cores are essential—they hold their shape during frying. If your grocery store doesn't carry bacalao, Trader Joe's often stocks it in the frozen section, though fresh is preferable. The potatoes should be firm and starchy—Yukon golds strike the perfect balance between creaminess and structure when cooked in the broth.
No fresh thyme? Dried works at one-third the amount, though fresh delivers that bright, floral aroma that's signature to this dish. Running short on vegetable broth? Water with 1 tsp bouillon powder suffices, but quality matters—Pacific Foods or Imagine brands are reliable. The celery crowns require a light flour coating—King Arthur or Gold Medal all-purpose flour works best for crispiness. For the lemon juice, Meyer lemons add subtle sweetness, but regular lemons work perfectly fine. Substituting heavy cream? Full-fat coconut milk provides a similar richness, though the flavor profile shifts slightly. The garlic should be freshly minced for maximum aromatic impact—pre-minced garlic lacks the necessary punch.
This soup reheats beautifully—taste and adjust seasoning after reheating, as flavors meld further. Store in an airtight container for up to 4 days in the fridge, though the crispy celery crowns are best enjoyed fresh. For longer storage, freeze the soup without the celery crowns (add them fresh when reheating) for up to 3 months. The celery crowns can be prepped ahead and fried just before serving—keep them warm in a 200°F oven while you finish the soup. Serve immediately with crusty bread to soak up every last drop of that velvety, herby broth.
Why You'll Love This Recipe
- One-Pot Wonder: I swear by this recipe when I’m too tired to deal with multiple pans. Soak the bacalao overnight (set it and forget it), then toss everything—onions, peppers, celery—into the same pot. The potatoes absorb all the salty, smoky goodness while the bacalao flakes apart effortlessly. That’s my kind of magic.
- Salty-Sweet Magic: Between us, the bacalao’s funky, cured flavor paired with the bright red bell peppers is chef’s kiss. The onions caramelize just enough to balance the salt, and the potatoes? They turn into pillowy clouds that soak up every last drop of that umami broth. Honestly, it’s the kind of dish that makes you want to lick the bowl.
- Weeknight to Potluck: This soup is my secret weapon for lazy nights and Sunday gatherings. Double the batch, and it’s still hearty enough for a crowd—just add crusty bread and a sprinkle of parsley. My roommates used to mock me for making it so often, but now they’re the ones begging for leftovers.
- Budget-Friendly Leftovers: A block of bacalao stretches farther than you’d think, especially when you bulk it up with potatoes and veggies. The flavors actually improve the next day as the salt mellows out, and reheating it is just dumping it back in a pot. I’ve fed a family of five for under $15—no lie. Plus, it’s one of those rare soups that tastes better cold, so lunch is sorted too.
Step-by-step instructions for bacalao soup with crispy celery crowns
Transform salt-cured bacalao into a velvety lemon-herb soup with perfectly crisp celery crowns.
Prepare the Crispy Celery Crowns
Cut the thick ends of the 4 whole celery stalks into 1-inch rounds, leaving the leafy tops intact. These will become your crispy crowns. In a small bowl, whisk together the 0.25 cup all-purpose flour, 1 tsp salt, and 1 tsp ground black pepper. Toss the celery rounds in this seasoned flour until evenly coated.
Heat 0.25 cup of the extra-virgin olive oil in a large skillet over medium heat until shimmering. Working in batches, add the celery crowns and cook for 3-4 minutes per side until golden brown and crispy. Transfer to a paper towel-lined plate to drain excess oil. Keep warm while you prepare the soup base.
Build the Lemon-Herb Velouté Base
In the same skillet, add the remaining 0.5 cup extra-virgin olive oil and heat over medium heat. Add the 2 whole yellow onions, sliced, and cook for 5 minutes until softened. Add the 2 whole red bell peppers, sliced into strips, and cook for another 5 minutes until slightly charred. Stir in the 6 cloves minced garlic and cook for 30 seconds until fragrant.
Add the 2 lb cubed russet potatoes, 6 cups vegetable broth, and 0.5 cup fresh lemon juice. Bring to a boil, then reduce heat to medium-low and simmer for 15 minutes until the potatoes are tender. Using an immersion blender, purée the soup until completely smooth. This creates the velvety base for your velouté.
Incorporate the Bacalao and Herbs
Add the 1.5 lb properly soaked salt-cured bacalao to the soup and simmer gently for 10 minutes. The fish should flake easily when tested with a fork. Stir in the 0.25 cup chopped fresh thyme and 0.25 cup chopped fresh parsley, allowing the flavors to meld for 2 minutes.
Remove from heat and stir in the 0.5 cup heavy cream, creating a luxurious finish. Taste and adjust seasoning with additional salt or pepper if needed. The soup should be rich but still bright from the lemon juice, with a delicate herbaceous note.
Assemble and Serve
Ladle the velouté into serving bowls, placing 2-3 crispy celery crowns on top of each portion. The contrast between the crispy crowns and velvety soup creates a perfect textural experience. Garnish with additional fresh parsley if desired.
Serve immediately while the celery crowns maintain their crispness. Each spoonful delivers the delicate flavor of bacalao, brightened by lemon and enhanced by the crispy celery accents. This technique ensures you deliver on the promised crispy element while maintaining the soup's velvety texture.
Pro Tips For Making Bacalao Soup
- SOAK THE BACALAO 24 HOURS: I learned this the hard way—skipping the full soak leaves the fish tasting like a salt lick. Use cold water, change it twice (morning and night), and add a splash of vinegar or lemon juice to cut through the salt faster. The fish should float by the end, but don’t rush it—this is where the flavor actually softens.
- SWEAT THE VEGETABLES LOW AND SLOW: High heat turns your onions and peppers into sad, bitter mush. Instead, cook them over medium-low with a pinch of salt until the onions are translucent and the peppers start to collapse—about 15 minutes. The soup will taste deeper, and you’ll avoid that "raw vegetable" aftertaste.
- PEEL POTATOES AFTER COOKING: Russets bruise easily, and peeling them first wastes time and good starch. Toss them in whole, let them simmer until fork-tender, then peel and mash them into the soup at the end. The skin adds body, and you’ll save 10 minutes of prep—your future self will notice.
- ACIDIFY THE SOUP AT THE END: The bacalao’s saltiness needs balancing, but adding lemon or vinegar too early curdles the potatoes. Wait until the very last minute, then stir in 1-2 tablespoons of fresh lemon juice or a splash of white wine vinegar. Taste as you go—this is the step that makes the difference between "meh" and "wow."
Flavor customization for these flavors
Citrus Variations
Swap the lemon juice for orange juice (about ½ cup) to add a sweeter, more complex flavor profile. I find blood oranges work beautifully—their natural tartness balances the richness of the bacalao.
For a zesty twist, add ½ tsp grated orange zest along with the juice, which brightens the entire dish. 🍊
Spice Infusions
Add ½ tsp smoked paprika or ¼ tsp cayenne pepper to the flour coating for the celery crowns to introduce subtle smokiness or heat. For a deeper flavor, infuse the vegetable broth with 1 bay leaf and 2 sprigs of rosemary while simmering.
Remove the herbs before blending for a cleaner finish.
Herb Alternatives
If fresh thyme is unavailable, try fresh oregano (use ¼ cup) for a more robust Mediterranean flavor. For a lighter touch, substitute fresh basil (about ¼ cup)—it pairs surprisingly well with the lemon and bacalao.
Dried herbs work too, but reduce to 1 tbsp and toast them lightly in the oil first for better aroma.
Vegetable Swaps
Replace the red bell peppers with roasted red peppers (about 1 cup, jarred or homemade) for a sweeter, deeper flavor. For extra heartiness, add ½ cup diced fennel to the soup base—it adds a subtle anise note that complements the bacalao beautifully.
Both swaps work well without altering the soup's overall structure.
Creamy Upgrades
For a richer finish, replace the heavy cream with ½ cup crème fraîche or Greek yogurt (full-fat) to add tanginess. If you prefer a dairy-free option, use ½ cup coconut cream (chilled overnight to thicken) or ½ cup cashew cream (blended soaked cashews with water).
Each option adds a unique texture while keeping the soup velvety.
Protein Enhancements
Add ½ lb cooked shrimp or ½ lb poached mussels to the soup during the final 5 minutes of cooking. The shrimp should turn pink and opaque, while mussels release their briny essence.
For a meaty twist, stir in ½ lb shredded rotisserie chicken after removing the soup from heat—it absorbs the flavors beautifully. 🦐
Nutrition facts
Frequently asked questions
How long should I soak bacalao before using it in this recipe?
Soak the bacalao for 8-12 hours in cold water, changing the water 2-3 times during that period. This removes excess salt and ensures the delicate flavor shines through. For best results, use a large bowl and keep it refrigerated while soaking.
Can I make this soup without celery crowns?
If you skip the celery crowns, you can still enjoy the velvety soup by adding 2 tbsp chopped celery leaves to the broth for subtle flavor. For extra texture, try crispy fried potato rounds or garlic croutons instead. The soup will still be delicious without them.
What's the secret to keeping the celery crowns crispy?
The key is using thick celery stalks with fibrous cores and cooking them at medium heat until golden brown. Pat them dry before frying to prevent excess moisture. Keep them warm in a 200°F oven while finishing the soup to maintain crispness.
Can I substitute fresh herbs with dried ones?
Yes, but reduce the amount by one-third. For example, use 1 tbsp dried thyme instead of 0.25 cup fresh. Toast the dried herbs lightly in the olive oil for 30 seconds before adding to the soup to enhance their aroma. Fresh herbs always taste better, but dried works in a pinch.
How do I fix soup that tastes too salty?
If the soup tastes too salty, add ½ cup milk or heavy cream and simmer for 5 minutes to dilute the salt. For a more dramatic fix, blend in ½ cup grated potato or sweet potato (cooked or raw) to absorb excess saltiness. Taste as you go—this is a gradual process.
