Preheat oven to 350 degrees.
Arrange stale bread slices on an ungreased cookie sheet. Place in preheated oven for 4 minutes OR until bread feels dry (but not like toast).
Tear bread slices into medium sized pieces. Place in ungreased deep casserole dish. Sprinkle with plump raisins (if using). Set aside.
Pour milk and heavy whipping cream into a medium saucepan. Warm over low-medium heat while stirring constantly. When small bubbles form along saucepan's edges, add unsalted butter and sugar. Stir until butter is melted and sugar is dissolved.
Remove saucepan from heat and set aside.
In a large bowl, combine eggs, vanilla extract and salt. Add warm milk mixture and stir until evenly combined.
Pour milk mixture over bread pieces in casserole dish. Stir lightly to make sure bread is thoroughly soaked. Cover and soak for 10 minutes to thoroughly soak bread pieces.
Bake uncovered for 45 to 50 minutes OR until bread is golden brown and has pulled away from edges of casserole dish.
The bread pudding will rise high while baking. It will settle down while cooling.
Serve hot. Top with whipped cream if desired.