Butter your 9x13 inch baking dish generously.
This prevents the bread from sticking later.
Set it aside while you work.
Cut your bread into 1-inch thick slices.
Arrange them in the prepared baking dish.
Slightly overlap the slices if needed.
Whisk eggs in your large mixing bowl.
Add milk, cream, and granulated sugar next.
Mix in vanilla, cinnamon, and salt thoroughly.
Blend until everything combines smoothly together.
Pour the custard mixture over your bread slices.
Press down gently to help absorption happen.
Make sure all bread gets coated evenly.
Cover with plastic wrap tightly.
Place the dish in your refrigerator overnight.
This step is very important for texture.
The bread soaks up all that custard.
Mix flour, brown sugar, cinnamon, and salt.
Cut in cold butter until it's crumbly.
This creates a delicious streusel topping.
Preheat your oven to 350°F in the morning.
Remove the dish from the refrigerator first.
Sprinkle the topping over everything evenly.
Cover with foil and bake for 30 minutes.
Remove foil and bake 30 minutes more.
The top should turn golden and crispy.