01 - Grease a 9x13 inch baking dish with butter or nonstick spray. Arrange the bread cubes evenly in the prepared dish.
02 - In a large bowl, whisk together eggs, milk, heavy cream, sugar, vanilla, cinnamon, nutmeg, and salt until completely smooth and combined.
03 - Pour the custard mixture evenly over the bread cubes, gently pressing the bread down to help it absorb the liquid thoroughly.
04 - In a small bowl, mix together melted butter, brown sugar, and cinnamon until well combined. Stir in nuts if using.
05 - Sprinkle the cinnamon sugar topping evenly over the entire casserole.
06 - Cover the dish with aluminum foil and refrigerate for at least 2 hours, or overnight for best results and optimal texture.
07 - Preheat the oven to 350°F. Remove the casserole from the refrigerator and let it sit at room temperature while the oven preheats.
08 - Bake the covered casserole for 30 minutes to ensure even cooking throughout.
09 - Uncover and bake for an additional 15 minutes, until the top is golden brown and the custard is completely set.
10 - Let cool for 10 minutes before serving. Serve warm, optionally with maple syrup or fresh berries.