African Fish and Rice Recipe: Tomato-Pepper Stew with Fluffy Jasmine Grains

Main Courses

African Fish and Rice Recipe: Tomato-Pepper Stew with Fluffy Jasmine Grains

This African fish and rice recipe brings bold flavors to your table with a fragrant tomato-pepper stew and fluffy jasmine rice—perfect for a hearty, satisfying meal. 🌟 The secret lies in slow-cooked fish simmered in a rich, spiced sauce that infuses every grain of rice with deep, savory notes. I've perfected this dish over years of cooking, balancing smoky, sweet, and tangy flavors that make it unforgettable.

The foundation starts with jasmine rice, cooked in a fragrant broth that absorbs the stew's complex flavors while staying light and fluffy. Meanwhile, the fish—whether firm white or mild tilapia—is marinated in a blend of garlic, ginger, and African spices before being gently poached in the same sauce. This ensures tender, flavorful protein that pairs perfectly with the rice.

By the time you serve this dish, you'll have a restaurant-quality meal with vibrant colors, aromatic spices, and a balance of textures—tender fish, fluffy rice, and a rich, slightly spicy sauce. The dish is complete with fresh herbs like cilantro or parsley for brightness and a squeeze of lime to cut through the richness.

Serve with a side of pepper sauce or a simple green salad to round out the meal. This recipe is ideal for family dinners, gatherings, or when you crave a dish that's both comforting and full of flavor. Let's get cooking!

👨‍🍳
Difficulty
Medium
🐟
Diet
Seafood
🔥
Calories
Med Cal

Ingredients for african fish and rice

Jasmine rice, fluffy fish fillets, and bold African spices—this is your pantry checklist for a restaurant-worthy dish.

Ingredient Amount Notes
Jasmine Rice 🍚 1 ½ cups Uncooked, long-grain preferred
White Fish Fillets 🐟 1 ½ lb Tilapia or cod, skinless
Diced Tomatoes 🍅 14 ½ oz Can, no salt added
Bell Peppers 🧅 2 whole Red or green, diced
Red Onion 🧅 1 whole Medium, finely chopped
Garlic Cloves 🧄 6 cloves Minced, fresh preferred
Fresh Ginger 🌿 2 tbsp Grated, fresh preferred
African Bird's Eye Chili Peppers 🌶️ 4 whole Seeds removed, finely chopped
Tomato Paste 🍅 2 tbsp Smooth, no sugar added
Vegetable Oil 🫒 3 tbsp Light, for sautéing
Fish Stock 💧 2 cups Low-sodium preferred
Fresh Cilantro 🌿 ¼ cup Chopped, for garnish
Lime 🍋 1 whole Juiced, for brightness
Salt 🧂 1 ½ tsp Kosher or sea salt
Ground Black Pepper 🌶️ ½ tsp Freshly ground

The fish is the star, so don't skimp on quality. Whole Foods or local fish markets have the freshest tilapia or cod—look for bright, clear eyes and firm flesh. If you're using frozen, thaw it overnight in the fridge. The jasmine rice? Lundberg Farms is my go-to brand—it stays fluffy and absorbs flavors beautifully. For the African bird's eye chilies, check the international aisle at Whole Foods or order online if your local store doesn't carry them. Fresh ginger and garlic make all the difference here—skip the jarred stuff, trust me.

No red bell peppers? Green or yellow work fine, but red gives the best color. Diced tomatoes can be fresh if you prefer—just chop them yourself. Running low on fish stock? Vegetable broth in a pinch, though the fish flavor is worth it. The tomato paste is non-negotiable for depth—Muir Glen is my favorite, but any smooth, no-sugar-added brand works. For extra heat, leave the seeds in the chilies, but remove them if you're serving kids or sensitive eaters. The lime should be freshly juiced—bottled juice just doesn't cut it here.

This dish tastes even better the next day as the flavors meld. Store leftovers in an airtight container in the fridge for up to 3 days. The rice stays fluffy if you spread a little oil on top before sealing. For a quick meal prep hack, cook the rice and sauce separately, then combine when ready to eat. The fish reheats beautifully—gentle warming in a skillet with a splash of water keeps it moist. Freezes well for 2 months if you want to make a big batch.

❤️

Why You'll Love This Recipe

  • One-Pot Magic: I swear by this when I’m too tired to wash extra dishes. The fish simmers right in the same pot as the rice and veggies—no separate pans, no fuss. Just chop, toss, and let the spices work their magic while you stir a single pot.
  • Tomato-Pepper Pop: That sweet, smoky kick from the diced tomatoes and bell peppers? It’s the star. The onions caramelize just enough to balance the bright acidity, and the fish soaks up all the flavor like a sponge. Honestly, the first time I tasted it, I nearly burned the kitchen.
  • Lunchbox Hero: Between us, this is my go-to for meal prep. The rice stays fluffy for days, and the fish—if you cook it just right—holds its texture. Pack it with a squeeze of lemon, and it’s a lunch that’ll have coworkers asking for seconds. (Yes, even on a Tuesday.)
  • Budget Win: White fish fillets and jasmine rice won’t break the bank, but the result feels like a fancy dinner. I’ve made this for date nights, family dinners, and solo nights in—same ingredients, different vibes. Plus, leftovers reheat like a dream.

Step-by-step instructions for African fish and rice

This vibrant West African dish delivers fluffy jasmine rice and tender fish in a bright tomato-pepper stew.

1

🍳 Step 1: Sauté the Aromatic Base

Heat the 3 tablespoons vegetable oil in a large, heavy-bottomed pot over medium heat. Add the 1 whole red onion and 2 whole bell peppers, both finely chopped, and sauté for 5-6 minutes until they begin to soften and release their juices.

Next, add the 6 cloves garlic cloves and 2 tablespoons fresh ginger, both minced, along with the 4 whole African bird's eye chili peppers, seeds removed and finely chopped. Cook for 1-2 minutes until the garlic becomes fragrant—this is where the magic happens. The chili peppers will add a subtle kick without overpowering the dish. Watch closely to avoid burning the garlic; it only takes seconds to go from perfect to bitter.

2

🍳 Step 2: Build the Tomato-Pepper Stew

Stir in the 2 tablespoons tomato paste and cook for 1 minute to deepen its flavor. Pour in the 14.5 ounces diced tomatoes and add the 1.5 teaspoons salt and 0.5 teaspoon ground black pepper. Bring the mixture to a gentle simmer, then reduce heat to low and let it cook uncovered for 10 minutes to allow the flavors to meld together.

Here's the thing—this step is all about building layers of flavor. You want the tomatoes to break down slightly and release their natural sweetness. If the mixture looks too thick, add ¼ cup water to loosen it. The stew should have a rich, vibrant color and a fragrant aroma that fills your kitchen. This is the foundation of your dish, so take your time and let it develop properly.

3

🥘 Step 3: Cook the Jasmine Rice

While the stew simmers, rinse the 1.5 cups jasmine rice under cold water until the water runs clear. This removes excess starch and prevents the rice from becoming gummy. Drain well and set aside.

Add the rice to the pot with the tomato-pepper mixture and stir gently to combine. Pour in the 2 cups fish stock and bring to a boil. Once boiling, reduce heat to low, cover the pot tightly with a lid, and let it simmer for 15 minutes. After this initial cooking time, turn off the heat and let the rice steam undisturbed for another 10 minutes. The residual heat will finish cooking the rice perfectly—fluffy and separate, with no risk of burning.

4

🔪 Step 4: Prepare and Add the Fish

While the rice cooks, cut the 1.5 lb white fish fillets into 1-inch pieces. Season them lightly with a pinch of salt and pepper—just enough to enhance their natural flavor without overpowering the dish. Set aside.

After the rice has finished steaming, gently fluff it with a fork, then make a well in the center of the pot. Add the fish pieces to the well, being careful not to stir them into the rice. Cover the pot again and let the fish cook for 5-7 minutes on the residual heat. You want the fish to be just cooked through—it should flake easily with a fork but still retain its moisture. Overcooking will make it dry and tough, so keep an eye on it.

5

🍽️ Step 5: Finish and Serve

Once the fish is cooked, remove the pot from heat and stir everything together gently. The fish should absorb the flavors of the stew while maintaining its tenderness. Squeeze in the juice of the 1 whole lime and stir in the 0.25 cup fresh cilantro, chopped. This adds a bright, fresh finish that cuts through the richness of the dish.

Taste and adjust the seasoning if needed—perhaps a pinch more salt or a squeeze of extra lime to balance the flavors. Serve immediately, family-style, with the fluffy rice and tender fish mingling in every bite. The aroma alone will have everyone at the table eager to dig in. Enjoy this dish warm, as the flavors continue to develop even after it's served.

👨‍🍳

Pro Tips For Making African Fish And Rice

  • Sear Fish First: After burning my first batch of fish because I tossed it raw into the sauce, I learned to sear the fillets in a dry pan for 2-3 minutes per side first. This locks in moisture and builds flavor—your future self will notice the difference when the fish stays tender instead of falling apart in the stew.
  • Rinse Jasmine Rice Twice: I used to skip this, and my rice always turned out gummy. Rinse jasmine rice under cold water until the water runs clear—this removes excess starch that makes the grains stick together. Trust me, your rice will be separate and fluffy, not gluey.
  • Don’t Overcrowd the Pan: When I first tried this, I dumped all the veggies (onions, peppers, tomatoes) into the pan at once, and the onions burned before the peppers softened. Sauté onions first for 3-4 minutes until translucent, then add peppers and tomatoes. Patience here keeps the flavors balanced.
  • Use Fish Stock, Not Water: Water makes the rice bland, but fish stock—even a bouillon cube in a cup of water—adds depth. If you’re lazy (like me sometimes), just add a splash of soy sauce or a pinch of smoked paprika to mimic the umami. Your rice will taste richer without extra effort.

Make-ahead tips for this recipe

Rice Prep Ahead

Cook the jasmine rice 24 hours ahead and store it in an airtight container at room temperature. The grains stay firm and absorb flavors beautifully when reheated. For extra insurance, spread a thin layer of vegetable oil on top before sealing to prevent drying. Reheat gently in a skillet with 2 tablespoons water over low heat for 3-4 minutes—just enough to warm through without turning mushy. 💫

Sauce Make-Ahead

Prepare the tomato-pepper stew 1 day in advance and refrigerate it in a sealed container. The flavors deepen overnight, becoming richer and more complex. When ready to serve, reheat the sauce over medium-low heat for 5-7 minutes, stirring occasionally. If it thickens too much, add 2-3 tablespoons water to restore the perfect consistency. This step saves 30 minutes on busy days!

Fish Prep Shortcut

Cut the fish into 1-inch pieces and marinate them in 1 tablespoon lime juice, ½ teaspoon salt, and ¼ teaspoon black pepper for up to 4 hours in the fridge. This keeps the fillets tender and infuses them with subtle brightness. Store the marinated fish in a ziplock bag with parchment paper to avoid sticking. On serving day, simply add them to the reheated sauce and cook for 5-7 minutes—no extra prep needed!

Complete Meal Assembly

For a foolproof make-ahead meal, combine all components—cooked rice, reheated sauce, and marinated fish—1 hour before serving. Store them separately in individual containers and assemble when ready. This ensures the fish stays warm without overcooking, while the rice maintains its texture. Garnish with fresh cilantro and lime just before eating for that restaurant-quality finish. ✨

Freezer-Friendly Option

Freeze the entire dish in portioned servings for up to 2 months. Use freezer-safe containers or heavy-duty ziplock bags, leaving 1 inch of headspace for expansion. Thaw overnight in the fridge, then reheat in a pot with 2 tablespoons water over low heat for 8-10 minutes. Stir gently to redistribute the sauce—this method preserves the fish's moisture and the rice's fluffiness. Perfect for lazy weeknights!

Nutrition facts

Servings 4
Amount Per Serving
Calories 480kcal
% Daily Value *
Total Fat 18g23%
Saturated Fat 3g15%
Cholesterol 85mg28%
Sodium 520mg23%
Total Carbohydrate 52g18%
Dietary Fiber 6g21%
Sugars 8g
Protein 38g76%
* Percent Daily Values are based on a 2,000 calorie diet. Your daily values may be higher or lower depending on your calorie needs.

Frequently asked questions

1

What type of fish works best for this African fish and rice dish?

Firm white fish like tilapia, cod, or mahi-mahi work perfectly—they stay tender and absorb the sauce beautifully. Avoid delicate fish like flounder, which can fall apart. If using frozen fish, thaw it overnight in the fridge for even cooking.

2

Can I make this recipe without African bird's eye chilies?

Use ½ teaspoon cayenne pepper or 1 teaspoon hot paprika for heat, or skip it entirely for a milder version. For extra depth, add a pinch of ground allspice or cinnamon—common in West African cuisine. The dish will still taste amazing!

3

Why does the rice turn out mushy in this recipe?

Mushy rice usually happens from overcooking or insufficient draining before adding to the pot. Always rinse the jasmine rice until the water runs clear, then use the steaming method (cover and let sit off heat) to finish cooking. Too much liquid in the pot can also cause this—adjust to 2 cups fish stock for 1.5 cups dry rice.

4

How can I make this dish spicier?

Add 1 extra chili pepper to the sauté, or stir in 1 teaspoon chili powder with the tomato paste. For heat lovers, serve with a side of African pepper sauce (like shito) on the table. Never add raw chili to cooked fish—it can make the sauce bitter.

5

What are good side dishes to serve with this?

Try fried plantains, a crisp green salad with lime dressing, or spicy roasted yams. For extra protein, add grilled shrimp skewers or a side of black-eyed peas. The dish pairs well with anything that balances its richness—think fresh, tangy, or crunchy textures.

★★★★★5.0(5 reviews)
Categories Main Courses