Set oven to 350F.
DO THIS STEP IF USING FRESH BREAD: Place bread cubes on a large baking tray, then bake in the oven for 10 – 12 minutes to dry it out and lightly toast. Remove from the oven to dry out. Set aside in a large mixing bowl.
Set a cast iron skillet on medium heat and, once hot, add the ingredients for the caramel and stir and bring to a light simmer (you may have to gradually increase the heat). Simmer for 3 – 5 minutes, or until it begins to caramelize and turn brown. Reduce the heat gradually to thicken, cooking and stirring for an additional 3 – 5 minutes. Remove from the heat to thicken.
In a mixing bowl, mix together the remaining ingredients (except the Topping and Garnish).
Pour the egg mixture over the bread cubes and continuously fold and stir until ALL the cubes are covered in the batter. Let rest (covered) in the fridge overnight OR allow it to soak at room temperature for 25-30 minutes. Ensure that all the liquid has been absorbed.
In a 9 x 13 casserole dish, pour in the caramel and spread it out. Then add the soaked bread cubes. Add the toppings. Cover and bake for 35 – 40 minutes, removing the top for the final 10 minutes of baking until golden brown.
Let cool for 5 – 10 minutes before slicing, then enjoy with fresh berries and/or syrup.
Enjoy!