Ropa vieja is a classic Cuban dish of shredded beef simmered in a tangy tomato-pepper sauce. This fish version swaps the beef for firm white fish, giving you the same savory, saucy, and satisfying meal in a fraction of the time. It’s a brilliant weeknight dinner that’s both light and full of flavor, perfect for serving over rice or with warm tortillas.
Ingredients
- 1 ½ lb (680 g) firm white fish fillets (such as cod, halibut, or snapper)
- 2 tbsp (30 ml) olive oil, divided
- 1 large yellow onion, thinly sliced (about 1 ½ cups / 190 g)
- 1 red bell pepper, thinly sliced (about 1 cup / 120 g)
- 1 green bell pepper, thinly sliced (about 1 cup / 120 g)
- 4 cloves garlic, minced
- 1 tsp (2 g) ground cumin
- 1 tsp (2 g) dried oregano
- ½ tsp (1 g) smoked paprika
- 1 (15 oz / 425 g) can tomato sauce
- ¼ cup (60 ml) dry white wine or fish stock
- 2 tbsp (30 ml) fresh lime juice (about 1 lime)
- 1 bay leaf
- Salt and black pepper, to taste
- 2 tbsp (8 g) chopped fresh cilantro, for garnish
Instructions
- Pat the fish fillets dry with paper towels and season both sides with salt and pepper.
- Heat 1 tablespoon (15 ml) of olive oil in a large skillet over medium-high heat. Add the fish fillets and cook for 3-4 minutes per side, until just cooked through and easily flaked with a fork. The internal temperature should reach 145°F (63°C), the USDA FSIS safe minimum for fish. Transfer the fish to a plate and set aside.
- Reduce the heat to medium and add the remaining 1 tablespoon (15 ml) of olive oil to the same skillet. Add the onion and both bell peppers. Cook, stirring occasionally, until the vegetables are softened and starting to caramelize, about 8-10 minutes.
- Stir in the garlic, cumin, oregano, and smoked paprika. Cook for 1 minute until fragrant.
- Pour in the tomato sauce, white wine (or fish stock), lime juice, and add the bay leaf. Bring the sauce to a simmer and let it cook for 5 minutes, allowing the flavors to meld and the sauce to thicken slightly.
- Using two forks, gently shred the cooked fish into large chunks. Add the shredded fish to the skillet with the sauce, stirring gently to coat. Let everything warm through for 2-3 minutes.
- Remove the bay leaf. Taste and adjust seasoning with salt and pepper. Garnish with fresh cilantro before serving.
Tips
- Choose the right fish: Use a firm, flaky white fish that won’t fall apart during cooking. Cod, halibut, snapper, or even tilapia work well. Avoid delicate fish like sole or flounder, which may disintegrate.
- Don’t overcook the fish: Since the fish will be added back to the sauce and simmered, it’s better to slightly undercook it in the initial sear. It will finish cooking in the sauce, keeping it moist and tender.
- Make it ahead: The sauce (without the fish) can be made up to 2 days in advance. Simply reheat the sauce, add the cooked fish, and warm through.
- Substitutions: If you don’t have white wine, use fish stock or even water with a splash of vinegar. For a smokier flavor, use chipotle powder instead of smoked paprika.
Serving Suggestions
Serve the ropa vieja fish over fluffy white rice, or with warm corn tortillas for a taco-inspired meal. It also pairs beautifully with black beans and fried plantains (tostones) for a complete Cuban feast. A simple green salad with a citrus vinaigrette would brighten the plate.
Variations
- Spicy Version: Add a minced jalapeño or serrano pepper along with the garlic for a touch of heat.
- Herb Swap: Replace cilantro with fresh parsley or oregano for a different flavor profile.
- Add Olives: Stir in ½ cup (80 g) of sliced green olives with the fish for a briny, salty contrast.
- Slow-Cooker Method: To make this in a slow cooker, place the seasoned fish in the bottom, top with all the vegetables and sauce ingredients, and cook on low for 2-3 hours, then gently shred.
Storage and Reheating
Store any leftovers in an airtight container in the refrigerator for up to 3 days. To reheat, place the desired portion in a skillet over medium heat, adding a splash of water or broth to loosen the sauce, and warm until heated through. You can also reheat in the microwave in 30-second intervals, stirring in between. The fish will continue to absorb flavor as it sits, making leftovers even more delicious.
Frequently Asked Questions
Can I use frozen fish? Yes, you can use frozen fish fillets. Thaw them completely in the refrigerator overnight, then pat them dry before cooking. Frozen fish may release more water, so you may need to cook it a minute or two longer.
What if I don’t have white wine? You can substitute the white wine with an equal amount of fish stock, chicken broth, or even water. If using water, consider adding a teaspoon of white wine vinegar to mimic the acidity of the wine.
Can I make this dairy-free? This recipe is naturally dairy-free, as it contains no butter or cream. Just ensure your fish stock or wine is dairy-free, which it typically is.
How do I know when the fish is done? The fish is done when it flakes easily with a fork and reaches an internal temperature of 145°F (63°C). Use a food thermometer to check the thickest part of the fillet.
Can I use canned fish? Canned fish like tuna or salmon won’t work well in this recipe, as they have a different texture and flavor. Stick with fresh or frozen fillets for the best result.
Is this recipe gluten-free? Yes, this recipe is naturally gluten-free. Just check that your tomato sauce and spices are certified gluten-free if you are highly sensitive.
Related
- Cheesecake Factory Miso Salmon Copycat Recipe
- Cheese Puff Corn: Easy Homemade Snack
- Cheese for Street Corn: Best Picks & How to Use
More recipes to cook
Safety notes: safe minimum internal temperatures from USDA FSIS; raw and undercooked fish guidance from the U.S. FDA. Food safety notes
Spotted an error? Tell us and we will correct it (corrections policy).