1. Preheat the oven to 190 degrees C
2. Put the fish in a large saucepan, add the milk and poach the fish gently for 5 mins. It should be slighty undercookded at this stage.
3. Transfer the fish to a plate with a draining spoon. When cool, remove the skin, cut the fish into large chunks and place in a 1.5 lite ovenproof dish.
4. Add the chopped onion and bay leaf 9if using) to the fish milk. Bring to the boil. Remove from the heat and leave to stand for 10 minutes. Strain.
5. Make a white sauce by melting 45g of the butter in a saucepan and stirring in the flour. Cook, stirring for 1 minute. Whisk in the infused milk a little at a time, ensuring there are not lumps. When all the milk is incorporated, bring to the boil and cook for 2 mins, whisking all the time. Remove from the heat.
6. Meanwhile, boil the potatoes for about 15 minutes or until cooked through. Mash with the remainign butter and the cream or milk and season with salt and pepper.
7. Add the prawns, capers and parsley to the fish,s eason with salt and pepper,and pour over the white sauce. Top with the mashed potatoes and use a fork to rough up the surface to make it crspy when cooked. Dust with Parmesan cheese, if using. Bake for 45 mins until the top is crispy and golden.