The best South African fish pie recipe



Looking for a budget-friendly meal that will feed six people? This fish pie is lip-smacklingy delicious and an easy crowd-pleaser.

In a time where we all look for pocket-friendly meals to prepare, this fish pie is a good option.

Packed with all the goodness nature has to offer, it is not only tasty but contains lots of nutrition our bodies need to remain strong and healthy.

Fish is loaded with omega-3 fatty acids and vitamins D and B2. It is also a powerful source of calcium and phosphorus, not to forget about minerals like iron, zinc, iodine, magnesium, and potassium.

Fish pie is an excellent dish to prepare on a cold winter’s day as it will fill you with warmth from the inside.

So, next time the temperature drops, surprise your family with a delicious fish pie. Keep any leftovers in the fridge for the following day. It will be just as tasty the following day, if not better.


  • 6 servings

Prep time

  • 15 minutes

Cooking time

  • 45 minutes

Total time

  • 1 hour


  • 400 g skinless white fish

  • 400 g skinless smoked haddock fish

  • 1 small onion

  • 4 cloves

  • 2 bay leaves

  • 4 eggs

  • 250 g of peas

  • 2 tablespoon parsley, chopped

  • 100 g butter

  • 50 g plain flour

  • 1 pinch nutmeg

  • 4 big potatoes

  • 50 g strong flavoured cheese

  • 600 ml milk


Fish pie

  • Peel the potatoes and boil until they can be mashed with butter and milk. The mashed potato will form the topping for the pie.
  • Hard boil the eggs, peel and set aside to use later.
  • Poach the fish in a frying pan with 500 ml of milk.
  • Chop the onion in quarters, stud each quarter with a clove, and add to the milk as well as the bay leaves.
  • Bring the milk to a boil, then reduce the heat and simmer for 8 minutes.
  • Lift the fish out of the pan, and strain the milk into a jug to cool.
  • Flake the fish into a baking dish.
  • Add the peas, on top of the flaked fish, slice the eggs and add to the dish.


  1. Melt the butter, stir in the flour and cook for a minute over low heat.
  2. Take off the heat, add a little of the strained milk, then stir until blended.
  3. Continue to add milk gradually.
  4. Mix well until a smooth paste forms.
  5. Return to the heat, bring to a boil and cook for 5 minutes. Stir until you have a sauce.
  6. Remove from the heat, add salt, pepper and nutmeg to season.
  7. Pour sauce over the fish, add the mashed potato to form the topping of the pie.
  8. Push the mashed potato to all the corners of the pie dish, sprinkle with grated cheese.
  9. Bake for 30 minutes in a heated oven 200°C.