Classic Kedgeree
60 min · 14 steps
Hard: over 60 min or 12+ steps
About this dish
Undyed smoked haddock poached in spiced milk forms the flavour base of this British-Indian classic. The fragrant poaching liquid cooks the basmati rice so every grain carries a deep, smoky depth, while golden onions, warm spices, jammy eggs and fresh herbs bring it all together into something truly memorable.
Allergy Info
Dairy, Eggs, Mustard, Fish
Diet Info
Pescatarian
Ingredients
Fresh Produce
- Large onionfinely diced1
- Garlic clovesfinely minced3
- Fresh gingerfinely grated1 tbsp
- Lemonzested and cut into wedges for serving1
- Fresh flat-leaf parsleyroughly chopped1 small bunch
- Fresh corianderroughly chopped1 small bunch
Fish & Seafood
- Undyed smoked haddock fillets600 g
Dairy & Eggs
- Whole milk500 ml
- Large eggs4
- Unsalted butter60 g
Dried Goods
- Basmati rice300 g
Spices & Seasonings
- Medium curry powder2 tsp
- Ground turmeric1 tsp
- Ground cumin1 tsp
- Black mustard seeds0.5 tsp
- Bay leaves2
- Cardamom podslightly crushed4
- Flaky sea salt1 tsp
- Freshly ground black pepper0.5 tsp
Utensils
- Wide saucepan
- Large sauté pan or deep wide saucepan
- Small saucepan
- Fine mesh strainer
- Mixing bowl
- Measuring jug
- Meat thermometer
- Fork
- Lid
- Grater
- Chef's knife
- Chopping board
Method
Rinse the basmati rice in cold water three times until the water runs nearly clear, then leave to soak in fresh cold water for 15 minutes. Finely dice the onion, mince the garlic, grate the ginger, zest the lemon, roughly chop the parsley and coriander, and lightly crush the cardamom pods.
Place the smoked haddock skin-side down in a wide saucepan. Pour over the milk, add the bay leaves, cardamom pods, and half the turmeric. Bring to a bare simmer over medium-low heat, then poach for 8–10 minutes until the fish just flakes — it should reach an internal temperature of 63°C on a meat thermometer. Transfer the fish to a plate. Strain and reserve the poaching milk, discarding the solids.
Bring a separate saucepan of well-salted water to a rolling boil over high heat. Gently lower the eggs into the water.
Boil the eggs for exactly 7 minutes for a just-set but slightly jammy yolk, then immediately transfer to a bowl of iced water and leave to cool completely before peeling and halving.
Melt the butter in a large, wide saucepan or deep sauté pan over medium heat until the foaming subsides. Add the mustard seeds and cook for 30–45 seconds until they begin to pop.
Add the onion and cook over medium-low heat, stirring occasionally, for 12–15 minutes until deeply golden and sweet but not burnt.
Add the garlic and ginger and stir constantly for 2 minutes until fragrant.
Add the curry powder, cumin, and remaining turmeric and stir for 1 minute to toast the spices in the butter.
Drain the soaked rice and add it to the pan, stirring to coat every grain in the spiced butter for 1–2 minutes.
Measure the reserved poaching milk and top it up with water to reach 550 ml total liquid. Pour into the rice pan, season lightly with salt, and bring to a brisk boil over high heat.
Reduce the heat to the lowest possible setting, cover the pan tightly with a lid, and cook for 12 minutes without lifting the lid, until all the liquid is absorbed and the rice is tender.
Remove the pan from the heat and leave covered for 5 minutes to steam. Meanwhile, flake the cooled haddock into large chunks, discarding any skin and bones.
Uncover the rice and gently fold through the flaked haddock, lemon zest, and most of the parsley and coriander using a fork — use a light hand to keep the fish in generous pieces. Taste and adjust seasoning.
Arrange the halved eggs on top, scatter over the remaining herbs, and serve immediately with lemon wedges alongside.