Lay all the fish fillets side by side, in a single layer, in a large, deep frying pan. Pour the milk over the fish, then drop in the thyme sprigs. Bring just to a boil, then lower the heat and simmer, covered, for 5 minutes until almost cooked. Remove the fish with a slotted spoon and set aside. Strain the milk through a sieve into a large jug, then add in the cream and stir to combine.
Melt the butter in a nonstick saucepan, stir in the leek and fry for a few minutes to soften. Stir in the flour and cook for 1 minute, stirring with a wooden spoon.
Remove the pan from the heat and slowly start to add the milk mix, a little at a time, beating well with a wooden spoon between each pouring so it mixes smoothly into the flour (if any milk has drained from the fish, stir that in, too). When all the milk is blended in, put the pan back on the heat, stirring all the time, until you have a thick and glossy sauce. Simmer for 1-2 minutes, stirring occasionally. Then remove from the heat and stir in the dill, parsley and a little grated nutmeg. Season to taste.
Butter a 25x18x7cm (10x7x3in) ovenproof dish. Break up the fish into large chunks, then put into the baking dish along with the prawns. Pour over the white sauce and gently mix. Cover and chill for 1½-2 hours, or overnight.
For the potato topping, bring a large saucepan of water to the boil. Drop in the potatoes and cook for 12-15 minutes, or until tender. Drain well. Add 25g (1oz) butter to the pan, then return the potatoes to the pan and mash them with the egg yolk until smooth, using a masher or electric hand whisk. Beat in the milk with a wooden spoon, season, then mix in the grated cheese. Set aside to cool.
Preheat the oven to Gas Mark 6, 200°C, fan 180°C. Spoon the mashed potato over the fish and spread evenly. Rough up the surface using a fork and dot over the extra butter. Put the dish on a nonstick baking sheet and cook for 30-35 minutes until golden.
See more Sunday Roast recipes