This curried fish and rice pilaf is a simple one-pan supper, gently spiced and full of flavour. The rice is cooked in a fragrant fish stock with onions, tomatoes and curry spices, soaking up all the lovely flavours. Partway through, pieces of fish are nestled into the rice to poach gently so they stay moist and flaky. Finished with peas and topped with halved hard-boiled eggs, it's a meal that's easy enough for any night of the week.

This is the kind of recipe that's easy to adapt using whatever you have on hand. Any firm white fish works well, and the level of spice can be adjusted to suit your taste.
And don't be put off by the idea of cooking fish and rice together - it's really simple. The small pieces of fish need hardly any time to cook, and adding them partway through gives the rice a head start, so everything finishes cooking at the same time.
In fact, this dish is quite similar to kedgeree, but instead of cooking the ingredients separately (as with a kedgeree), everything is cooked in one pan, so the rice absorbs all the flavour as it cooks.
Jump to:
One-pan curried fish pilaf at a glance
- Overview: This easy pilaf recipe is perfect for a fuss-free family meal. Everything cooks together in a single pan, with the rice absorbing all the flavour from the stock and spices, while the fish gently simmers on top.
- Main ingredients: White fish, rice, onions, tomatoes, hard-boiled eggs and spices.
- Prep time: 10 minutes
- Cooking time: 20 minutes
- Yield: Serves 4.
- Difficulty: Easy

Why you should try this curried fish and rice pilaf
- A quick and easy one-pan meal. This simple curried fish and rice recipe is ready in around 30 minutes.
- Budget-friendly. You can get away with using a cheaper fish (such as Alaskan pollock or even basa) or splash out and spend a little more on cod or haddock. To be honest, it's not really going to break the bank whichever fish you choose to use.
- Full of flavour. Because the rice cooks in the stock, it picks up all the delicious flavours.
- Family-friendly recipe. Mild curry flavours that the entire family can enjoy. Of course, you can spice it up if your taste buds can handle more heat.
- Nutritious and satisfying. A wholesome fish and rice meal with added vegetables.
- High-protein. This fish pilaf contains both fish and eggs, making it a high-protein meal.
Ingredient overview
**This is just an overview to explain why I used a particular ingredient. You can find the exact ingredient measurements to make this fish pilaf on the printable recipe card at the end of this post.**

- White fish. You can use any firm fish fillets. I used Alaskan pollock because that's what I had in the freezer, but I've also made this successfully with both cod and haddock. I haven't tried it with salmon yet, but there's absolutely no reason why it wouldn't be delicious. Just steer clear of softer fish such as sole, as firstly, it would break up, and secondly, it would be difficult to remove the bones.
- Basmati white rice. This recipe has been made and tested using uncooked basmati white rice. I haven't tested it with brown rice, and the cooking time would be longer. I normally buy Sainsbury's own-brand basmati, but I've used Aldi and Lidl brands with excellent results. Don't try to use a packet of instant microwave rice - that will just turn to stodge if you try to cook it in stock.
- Onions and tomatoes. The onions and tomatoes help to add flavour to the stock. They should be chopped into approximately half-inch dice.
- Butter. This is used to soften the onions and tomatoes before the stock is added. I used butter rather than oil for the better flavour.
- Sugar. This is optional, but if you choose to use it, you will need a scant half-teaspoonful. The sugar helps cut through the tartness of the tomatoes.
- Ground cardamom. Adds a subtle flowery warmth to the dish. You could leave it out or substitute it with mixed spice.
- Curry powder. Use your favourite brand of curry powder, or you could use my homemade curry powder blend.
- Stock. I used a mixture of fish stock (made with a fish stockpot) and vegetable stock (made with a stock cube). You could substitute with chicken stock. I'd tend not to use beef stock as it would add too much 'meaty' flavour to the dish.
- Hard-boiled eggs. I love hard-boiled eggs in this fish curry, but if you prefer not to use them, just leave them out.
- Peas. I use frozen petit pois because I find them sweeter than frozen garden peas. I just let them defrost and stir them gently through the pilaf once the rice has cooked. Leave them out if you don't like peas.
- Fresh coriander. I like to chop a small bunch of fresh coriander and sprinkle it over the fish pilaf just before serving. If you don't have any, it's not the end of the world - you could use chopped parsley instead, or leave it off completely.
How to make easy fish and rice pilaf (with eggs)
Preparation
A few easy steps before you begin:
- Cut the fish fillets into large bite-sized pieces. They will shrink slightly once cooked.
- Place the eggs in a saucepan of cold water and bring to a boil. As soon as the water is boiling rapidly, turn the heat off and leave the eggs in the hot water for 10 to 12 minutes. After 10 minutes, the yolk will be set, but still soft and creamy; after 12 minutes, you will have a slightly firmer yolk. Once the eggs have stood for the desired time, plunge them into cold water and leave them until they are cool enough to peel.
- Peel the eggs and cut them in half. Set them aside until you need them.
- Peel the onion and cut into half-inch dice.
- Wash the tomatoes and cut them into half-inch dice. There's no need to peel the tomatoes unless you absolutely want to.
- Dissolve the vegetable stock cube and the fish stock pot in 2 cups of boiling water and set aside.
- Measure out the rice and the spices so they are to hand when you need them.

Step 1: Melt the butter in a large pan and add the onions. Cook on low to moderate heat, stirring occasionally for 3 to 4 minutes until the onions start to turn translucent.

Step 2: Stir in the curry powder and cardamom and fry for 30 seconds longer.

Step 3: Add the chopped tomatoes (and sugar if using) and stir-fry for a further 2 minutes until the tomatoes start to soften.

Step 4: Stir in the rice and mix well to coat with the spices.

Step 5: Pour in the prepared stock and adjust the heat to simmer.

Step 6: Cover the pan with a lid and leave to simmer for 5 minutes.

Step 7: Remove the pan from the heat and nestle the pieces of fish into the partly cooked rice. Cover with a lid, return to the heat and continue to simmer for a further 7 to 8 minutes until the rice is tender.

Step 8: Remove from the heat, add the peas and use a spatula to fold them into the pilaf. Do this gently so as not to break up the fish.

Step 9: Arrange the eggs on top, then cover with a lid and leave the pan to stand (off the heat) for 10 minutes. Garnish with chopped coriander and serve immediately.
Tips for a successful outcome
Here are my top tips to ensure your stovetop fish and rice pilaf always turns out perfectly:
- Do the preparation steps before you start to cook. It makes it a lot easier if everything is ready up front.
- The ratio of rice to water is 2 parts water to 1 part rice (by volume) - so that would be 2 cups of stock to one cup of dry uncooked rice. I use an American 240 ml measuring cup, but you could use a British measuring cup, which is slightly larger at 250 ml.
- Use a pan with a tightly-fitting lid so there is minimal evaporation, and keep the heat to a simmer. There should be only a few bubbles gently breaking the surface of the stock. You don't want a heavy boil as that will cause the stock to evaporate before it has a chance to be absorbed by the rice.
- Add the pieces of fish as quickly as possible so the rice doesn't lose too much heat, and get the lid back on as soon as the fish has been added.
- Stir the peas in gently to avoid breaking the fish. I normally sprinkle the peas on top and use a fish-slice or spatula, and just turn the mixture over gently to incorporate them.
- The standing time is important! Add the eggs and cover the pan with a lid. Leave it to stand off the heat so the residual heat can finish cooking the rice and warm the peas and eggs. The pilaf should still be hot enough to serve, but if your kitchen is cold (mine gets very cold in winter), cover the pan with a cloth while it stands. You could also put the pan on a VERY low heat for a minute or two before serving. Not too high heat or the rice may burn on the bottom!
Serving suggestions
I like to serve this curried fish and rice pilaf with a dish of refreshing kachumber salad. It's very easy to make, and the freshness of the salad complements the spices in the pilaf beautifully.
You shouldn't need anything in the way of additional starch - the rice in the pilaf should be sufficient.

Bonus recipe - kachumber salad
This is an easy and refreshing salad to make:
Combine these ingredients in a bowl - it makes sufficient for 4 people to have a small helping each.
- 1 finely chopped tomato
- ¼ finely chopped, peeled and deseeded cucumber (about a 3 - 4 inch piece)
- ½ finely diced peeled onion
- 1 small bunch fresh coriander (finely chopped) - about 1 tablespoon
- 2 tablespoons freshly squeezed lemon juice
- Pinch salt (or to taste)
- Pinch black pepper
Refrigerate until ready to serve.

Equipment
The main equipment you will need is a large pan - either a deep frying pan, a wok or a saute pan. The main thing is that your pan should have a lid! It's important to keep the lid on the pan both while the rice is simmering and also while the dish is resting (off heat), so the residual heat can finish the dish.
You will also need a saucepan for boiling the eggs (if you are using them), and a sharp knife and chopping board to dice the onions and tomatoes.
Storage and freezing
- Refrigerator. Allow to cook after cooking. Store leftovers in an airtight container. Refrigerate as soon as possible after cooking - within 1 to 2 hours if possible. Do not keep for longer than 2 days, but best eaten within 24 hours.
- Reheating. Reheat gently in a pan or microwave until piping hot. If necessary, add a splash of water to loosen the rice. Stir carefully to avoid breaking the fish.
- Freezing. Technically, the dish can be frozen (without the eggs - they would become rubbery). Practically, I wouldn't recommend it. It wouldn't do you any harm, but I feel this is one of those dishes best eaten fresh.
FAQ
I would say most types of firm sea fish fillets can be used. I would avoid river fish because of the slightly muddy taste. However, most types of seafish (cod, haddock, pollock, hake, kingklip) can be used. As long as you have a nice fillet from the fish that holds its shape when cooked, you're good to go.
To reiterate, the fish should be added about halfway through the cooking time. This gives the rice a head start and allows the fish to steam gently while the rice finishes cooking.
The dish is designed to be family-friendly. I personally don't like a lot of heat. I've used a medium-strength curry, but you could use a mild curry blend instead, which will help you adjust the flavours to suit your taste.
Absolutely. This is designed to be a one-pan meal! The rice cooks in the sauce in a pan, then the fish is added to the same pan, and finally the peas and eggs.
Yes, you just need to take the cooking time into account. Baby spinach, added at the same time as the fish (just lay it on top of the fish and rice - it will wilt), and stirred through when you add the peas, would be ideal.
Save for later
If you would like to make this easy curried fish and rice pilaf, why not save the recipe to one of your Pinterest boards so you can find it easily? Just click on the image below.
Alternatively, you can save the recipe by clicking on the floating heart icon on the right-hand side of the screen.
Related recipes
Here are a few other rice-based recipes you might like to try.
📋The recipe

Curried fish and rice pilaf - with hard-boiled eggs
(Click the stars to rate this recipe)
Equipment
- Large saute pan with a lid
- Saucepan
- Sharp Knife
- Chopping Board
Ingredients
- 1 pound / 450 grams firm white fish fillets Pollock, cod, haddock or similar
- 1 cup / 180 grams uncooked white basmati rice
- 2 medium onions
- 2 large tomatoes
- 4 eggs
- 1 cup / 150 grams frozen peas defrosted
- 1 fish stock pot
- 1 vegetable stock cube
- 2 cups boiling water
- 1 ounce / 30 grams butter
- ½ teaspoon sugar optional
- 1 teaspoon ground cardamom
- 2 tablespoons curry powder hot, medium or mild - your choice
- Salt to taste
- Small bunch fresh coriander chopped for garnish (optional)
Kachumber salad (bonus recipe - optional)
- 1 finely diced tomato
- ¼ finely chopped, peeled and deseeded cucumber 3 - 4 inches in length
- ½ finely diced peeled small onion
- 1 small bunch fresh coriander finely chopped (roughly 1 tablespoon)
- 2 tablespoons freshly squeezed lemon juice
- Salt and black pepper to taste
Instructions
Preparation
- Place the eggs in a saucepan of cold water and bring to a boil. As soon as the water is boiling rapidly, turn the heat off and leave the eggs in the hot water for 10 to 12 minutes. After 10 minutes, the yolk will be set, but still soft and creamy; after 12 minutes, you will have a slightly firmer yolk. Once the eggs have stood for the desired time, plunge them into cold water and leave them until they are cool enough to peel.4 eggs
- Peel the eggs and cut them in half. Set them aside until you need them.
- Cut the fish fillets into large bite-sized pieces. They will shrink slightly once cooked. Set aside while you prepare the remaining ingredients.1 pound / 450 grams firm white fish fillets
- Peel the onion and cut into half-inch dice.2 medium onions
- Wash the tomatoes and cut them into half-inch dice. There's no need to peel the tomatoes unless you absolutely want to.2 large tomatoes
- Dissolve the vegetable stock cube and the fish stock pot in 2 cups of boiling water and set aside.1 fish stock pot, 1 vegetable stock cube, 2 cups boiling water
- Measure out the rice and the spices so they are to hand when you need them.1 cup / 180 grams uncooked white basmati rice, ½ teaspoon sugar, 1 teaspoon ground cardamom, 2 tablespoons curry powder
Cook the pilaf
- Melt the butter in a large pan and add the chopped onions. Cook on low to moderate heat, stirring occasionally for 3 to 4 minutes until the onions start to turn translucent.1 ounce / 30 grams butter
- Stir in the curry powder and cardamom and fry for 30 seconds longer.
- Add the chopped tomatoes (and sugar if using) and stir-fry for a further 2 minutes until the tomatoes start to soften.
- Stir in the rice and mix well to coat with the spices.
- Pour in the prepared stock and adjust the heat to simmer.
- Cover the pan with a lid and leave to simmer for 5 minutes.
- The rice will only be partly cooked at this stage, but taste the gravy for seasoning and add a little salt if necessary.Salt
- Remove the pan from the heat and nestle the pieces of fish into the partly cooked rice. Cover with a lid, return to the heat and continue to simmer for a further 7 to 8 minutes until the rice is tender.
- Remove from the heat, add the peas and use a spatula to fold them into the pilaf. Do this gently so as not to break up the fish.1 cup / 150 grams frozen peas
- Arrange the halved eggs on top, then cover with a lid and leave the pan to stand (off the heat) for 10 minutes. Garnish with chopped coriander and serve immediately.Small bunch fresh coriander
Kachumber salad (bonus recipe - optional)
- Combine all the ingredients and refrigerate until ready to serve.1 finely diced tomato, ¼ finely chopped, peeled and deseeded cucumber, ½ finely diced peeled small onion, 1 small bunch fresh coriander, 2 tablespoons freshly squeezed lemon juice, Salt and black pepper to taste
Notes
- Do the preparation steps before you start to cook. It makes it a lot easier if everything is ready up front.
- The ratio of rice to water is 2 parts water to 1 part rice (by volume) - so that would be 2 cups of stock to one cup of dry uncooked rice. I use an American 240 ml measuring cup, but you could use a British measuring cup, which is slightly larger at 250 ml.
- Use a pan with a tightly-fitting lid so there is minimal evaporation, and keep the heat to a simmer. There should be only a few bubbles gently breaking the surface of the stock. You don't want a heavy boil as that will cause the stock to evaporate before it has a chance to be absorbed by the rice.
- Add the pieces of fish as quickly as possible so the rice doesn't lose too much heat, and get the lid back on as soon as the fish has been added.
- Stir the peas in gently to avoid breaking the fish. I normally sprinkle the peas on top and use a fish-slice or spatula, and just turn the mixture over gently to incorporate them.
- The standing time is important! Add the eggs and cover the pan with a lid. Leave it to stand off the heat so the residual heat can finish cooking the rice and warm the peas and eggs. The pilaf should still be hot enough to serve, but if your kitchen is cold (mine gets very cold in winter), cover the pan with a cloth while it stands. You could also put the pan on a VERY low heat for a minute or two before serving. Not too high heat or the rice may burn on the bottom!
- Refrigerator. Allow to cook after cooking. Store leftovers in an airtight container. Refrigerate as soon as possible after cooking - within 1 to 2 hours if possible. Do not keep for longer than 2 days, but best eaten within 24 hours.
- Reheating. Reheat gently in a pan or microwave until piping hot. If necessary, add a splash of water to loosen the rice. Stir carefully to avoid breaking the fish.
- Freezing. Technically, the dish can be frozen (without the eggs - they would become rubbery). Practically, I wouldn't recommend it. It wouldn't do you any harm, but I feel this is one of those dishes best eaten fresh.
Nutrition
I am not a nutritionist. The nutrition information has been calculated using an on-line calculator, and is intended for information and guidance purposes only. If the nutrition information is important to you, you should consider calculating it yourself, using your preferred tool.
If you made this recipe and enjoyed it, I'd love it if you could give me a star rating in the comments below. And if you'd like to get in touch, you can email me at [email protected]. I'd love to hear from you. And don't forget to subscribe to my mailing list so you can grab yourself a copy of my FREE COOKBOOK!
If you'd like to continue browsing, just click on this link to all my recipes.









Did you make this recipe? Let me know!