Preheat your oven to 350°F (175°C). Grease a 9x13-inch baking dish with butter or cooking spray and set aside.
Spread the bread cubes on a baking sheet and let them dry out for 15-20 minutes at room temperature, or toast lightly in the oven for 5 minutes if your bread is very fresh.
In a large mixing bowl, whisk together the eggs, milk, heavy cream, granulated sugar, cinnamon, vanilla extract, nutmeg, and salt until smooth and well combined.
Add the dried bread cubes and diced apples to the custard mixture. Gently fold everything together until the bread is evenly coated, then let it soak for 15 minutes, stirring once halfway through.
Pour the melted butter into the prepared baking dish and spread it evenly across the bottom. Transfer the soaked bread mixture into the dish, spreading it out evenly.
Sprinkle the brown sugar over the top for a caramelized finish. Bake for 45-50 minutes until the top is golden brown and the center is set but still slightly jiggly when gently shaken.
Remove from the oven and let it cool for 10 minutes before serving. The pudding will continue to set as it cools and is best served warm.