You will need
Pre-heat the oven to 180C/350F/Gas 4.
Grease a 1.75l/3pt pudding basin with butter. Butter the bread, remove the crusts and cut in half diagonally, creating triangles.
Whisk the egg yolks and caster sugar together in a bowl.
Split the vanilla pod, if using, and place in a pan with the milk and cream or add the vanilla essence. Bring the milk and cream to the simmer, then pour onto the egg yolks, stirring all the time. You now have the custard.
Arrange the bread in layers in the prepared basin, sprinkling the sultanas and raisins between the layers.
Finish with a final layer of bread without any fruit on top as this tends to burn. The warm egg mixture may now be poured over the bread and cooked straight away, but I prefer to pour the custard over the pudding then leave to soak into the bread for 20 minutes before cooking. This allows the bread to take on a new texture and have the flavours all the way through.
Once the bread has been soaked, place the dish in a water bath - you can use a roasting tray three-quarters filled with warm water. Lightly cover with buttered foil and place in the pre-heated oven. Cook for about 20-30 minutes until the pudding begins to set. Because we are only using egg yolks, the mixture cooks like a fresh custard and only thickens; it should not become too firm.
When ready, remove from the water bath, sprinkle liberally with caster sugar to cover, and glaze under the grill on medium heat. The sugar will dissolve and caramelise and you may find that the corners of the bread start to burn a little. This helps the flavours, though, giving a bitterweet taste, and certainly looks good. The bread and butter pudding is now ready to serve and when you take that first spoonful and place it in a bowl you will see the custard just seeping from the dish.
Note: Freshly grated or ground nutmeg can be sprinkled between the layers for an extra spicy flavour.