Butter a 9x13-inch baking dish and arrange the torn croissant pieces in an even layer, leaving some gaps for custard to flow through.
In a large mixing bowl, whisk together the eggs, whole milk, heavy cream, granulated sugar, vanilla extract, cinnamon, and salt until completely smooth and the sugar has dissolved.
Pour the custard mixture evenly over the croissants, pressing down gently with a spatula to ensure all pieces are submerged. Let stand at room temperature for 30-45 minutes, pressing down occasionally.
Preheat your oven to 350°F (175°C) while the croissants soak.
Brush the top layer of croissants with melted butter and sprinkle with turbinado sugar for a caramelized crust.
Cover the baking dish loosely with aluminum foil and bake for 30 minutes.
Remove the foil and continue baking for 25-30 minutes until the top is golden brown and the custard is set with just a slight jiggle in the center.
Let cool for 10-15 minutes before serving warm. The custard will continue to set as it cools slightly.