Heat a griddle or large heavy-bottomed skillet over medium heat.
In a shallow baking dish, make the custard. Whisk together the heavy cream, whole milk, and eggs until smooth and well combined. No visible egg whites should remain. (You may need to give the mixture an occasional whisk as you go to keep it evenly blended.)
Whisk in the vanilla extract, cinnamon, orange zest, and a pinch of salt until fully incorporated.
Place 2–3 slices of sourdough into the custard, letting them soak for 1–2 minutes per side so they absorb the liquid but don’t become soggy.
Melt about a teaspoon of butter on the hot griddle, then add the soaked bread slices. Cook for about 2 minutes per side, or until golden brown and slightly crisp, with no visible wet egg remaining.
Continue soaking and cooking the remaining slices, adding more butter as needed. The number of finished pieces will depend on the thickness and dryness of your bread as well as the soak time.
Serve your homemade sourdough French toast warm with maple syrup, fresh berries, or a dusting of powdered sugar for a cozy, café-style breakfast or brunch.