01 - Preheat oven to 350°F. Grease a 9x13-inch baking dish with butter or cooking spray.
02 - Place bread cubes in the prepared dish. Sprinkle raisins evenly over the bread if using.
03 - In a large bowl, whisk together milk, cream, eggs, sugar, melted butter, vanilla extract, cinnamon, nutmeg, and salt until fully combined.
04 - Pour custard mixture evenly over bread cubes. Press down gently to ensure bread absorbs liquid. Let stand for 10 minutes.
05 - Bake for 40-45 minutes until golden and set but still slightly soft in center.
06 - While pudding bakes, melt butter in small saucepan over medium heat. Stir in flour and cook 1-2 minutes until bubbling but not browned.
07 - Gradually whisk in milk and cream until smooth. Add sugar and salt. Cook, stirring constantly, until thickened about 5 minutes.
08 - Whisk egg yolk in small bowl. Slowly add few spoonfuls of hot sauce to yolk while whisking, then return mixture to saucepan.
09 - Remove from heat. Stir in vanilla extract. Keep warm until serving.
10 - Serve warm bread pudding topped with warm vanilla sauce.