Follow Me On Social Media!
Spanish Fish and Potato Stew (Cozy One-Pot Dinner, 40 Minutes)
This spanish fish and potato stew is a cozy one-pot caldereta with flaky white fish, tender potatoes, smoky paprika, and a rich tomato broth in 40 minutes.
This spanish fish and potato stew is the kind of meal I keep coming back to whenever I want something that feels nourishing, rustic, and a little bit special without any fuss. It’s a caldereta-style one-pot dinner built on olive oil, sweet onion, ripe tomatoes, and smoky Spanish paprika, with tender potato rounds soaking up every drop of the broth and pillowy chunks of white fish that flake apart at the touch of a fork. I love how forgiving it is on a busy weeknight, yet how quietly impressive it looks when I ladle it into shallow bowls for friends.
Fun fact: caldereta actually takes its name from the caldera, the wide, shallow cooking pot that Spanish fishermen once carried aboard their boats. They would simmer whatever they caught that morning right on deck, sharing the pot family-style — which is exactly the warm, generous spirit I try to bring to my kitchen with this recipe.
Why this recipe works
- One pot, minimal cleanup, and ready in under 45 minutes from cutting board to table.
- The paprika-and-olive-oil base delivers that unmistakable Spanish depth without any complicated technique.
- Layering the potatoes first and adding the fish last keeps every bite perfectly cooked — creamy potato, silky broth, delicate flaky fish.
- Naturally gluten-free, dairy-free, and Mediterranean-diet friendly, so it fits how a lot of us like to eat now.
- Leftovers taste even better the next day once the flavors have had time to mingle.
Ingredients
- 250 g firm white fish fillets (cod, hake, or sea bass), cut into large chunks
- 2 medium potatoes, peeled and sliced into thick rounds
- 1 small onion, finely chopped
- 2 cloves garlic, minced
- 1½ cups chopped tomatoes (fresh or canned, no salt added)
- 2 tablespoons extra virgin olive oil
- 1 teaspoon smoked paprika (pimentón)
- ½ teaspoon sweet paprika
- 1 cup low-sodium vegetable or fish broth
- 1 bay leaf
- Salt and freshly ground black pepper, to taste
- Fresh parsley, finely chopped, for garnish
- Lemon wedges, for serving (optional)

Instructions
Step 1: Soften the onion
Warm the olive oil in a wide, heavy-bottomed pot or shallow Dutch oven over medium heat. Slide in the chopped onion and let it cook gently for 5 to 7 minutes, stirring now and then, until it turns soft, glossy, and translucent. Keep the heat moderate here — you want sweetness, not color.
Step 2: Bloom the garlic and paprika
Stir in the minced garlic and cook for about 30 seconds, just until it smells fragrant. Sprinkle in the smoked paprika and sweet paprika and give everything a quick stir so the spices bloom into the oil. Move fast so the paprika doesn’t scorch — it can turn bitter in a flash.
Step 3: Build the tomato base
Add the chopped tomatoes along with the bay leaf and let the mixture bubble gently for about 5 minutes. You want the tomatoes to break down a bit and the sauce to look slightly thickened and glossy before moving on.
Step 4: Layer the potatoes
Arrange the potato slices in a single even layer over the tomato mixture, then season lightly with salt and black pepper. Pour in the broth so the potatoes are mostly submerged but still peeking through the surface.
Step 5: Simmer until fork-tender
Cover the pot and let everything simmer softly for about 15 minutes. The potatoes are ready when a knife slides in with only a little resistance — they’ll finish cooking with the fish on top.
Step 6: Nestle in the fish and finish
Tuck the chunks of white fish into the stew, spooning a little sauce over each piece rather than stirring. Cover and cook for another 6 to 8 minutes, until the fish turns opaque and flakes easily. Fish out the bay leaf, taste for seasoning, and let the stew rest off the heat for 5 minutes. Scatter with parsley and serve with lemon wedges.
Nutrition information
- Calories: 320 kcal per serving
- Protein: 26 g
- Carbohydrates: 28 g
- Fat: 11 g (mostly heart-healthy olive oil)
- Fiber: 4 g
- Sodium: 380 mg
- Servings: 2 generous bowls
Pro tips for the best spanish fish and potato stew
- Choose a firm white fish — cod, hake, or sea bass all hold their shape beautifully. Skip anything too delicate or it will disappear into the broth.
- Invest in real Spanish smoked paprika (pimentón de la Vera) if you can. It’s the single ingredient that gives this stew its authentic soul.
- Slice the potatoes to an even thickness so every round cooks at the same pace and you don’t end up with a mix of raw and mushy pieces.
- Add the fish only at the very end and resist the urge to stir — a gentle spoonful of sauce over the top is all it needs to cook through.
- Let the pot rest, covered, for a full 5 minutes before serving. The flavors round out and the broth thickens into something really special.
Frequently asked questions
Can I use frozen fish for this stew?
Absolutely. Just thaw the fillets overnight in the fridge and pat them very dry with paper towels before cutting into chunks. Extra moisture will water down that lovely tomato-paprika broth.
What’s the best way to store leftovers?
Cool the stew completely, then transfer to an airtight container and refrigerate for up to 2 days. Reheat gently on the stovetop over low heat — a hard boil will overcook the fish and toughen it up.
Can I freeze this fish stew?
I don’t recommend it. Both the potatoes and the fish change texture in the freezer, going grainy and rubbery once thawed. This one is truly at its best fresh or lightly reheated within a couple of days.
How can I make it more of a full seafood stew?
Add a handful of peeled shrimp or scrubbed clams during the last 3 to 4 minutes of cooking. Cover the pot until the shrimp turn pink and any clams have opened.
What should I serve alongside it?
A hunk of crusty sourdough for mopping up the broth is essential in my house. A simple green salad with lemon vinaigrette or a side of sautéed spinach rounds it out into a complete Mediterranean-style dinner.




