Preheat and prepare: Preheat oven to 350°F (175°C). Generously butter a 1.5-quart casserole dish or 8x8-inch baking pan.
Combine bread and raisins: In a large mixing bowl, toss together bread cubes and raisins until evenly distributed.
Warm milk mixture: In a medium saucepan over low heat, combine milk and butter. Warm gently, stirring occasionally, until butter melts completely (about 5 minutes). Do not boil. Remove from heat and cool slightly.
Soak the bread: Pour the warm milk mixture over the bread and raisins. Let sit for 10 minutes to allow bread to absorb the liquid.
Make custard mixture: In a separate bowl, whisk together sugar, beaten eggs, vanilla extract, nutmeg, cinnamon, and salt. Pour over soaked bread and stir gently until everything is evenly coated.
Bake: Transfer mixture to prepared baking dish, spreading evenly. Bake for 40-50 minutes until center is set and a knife inserted comes out clean. Top should be golden brown. Let cool 10 minutes.
Prepare vanilla sauce: While pudding bakes, melt butter in a small saucepan over medium heat. Stir in brown sugar and cream. Bring to gentle boil, then reduce heat and simmer for 3 minutes, stirring constantly. Remove from heat and stir in vanilla extract and salt.
Serve: Drizzle warm vanilla sauce over bread pudding portions. Serve immediately while warm for best texture and flavor.