Add milk, chocolate, caramels, and sea salt to a medium saucepan over low heat.
Bring to a simmer (do not boil!) while whisking constantly until all the chocolate and caramel has melted.
Remove from heat and pour into mugs.
Serve immediately topped with whipped cream, caramel sauce, and chocolate shavings.
Notes
You can use any milk in this recipe. For extra thick and creamy hot chocolate, use at least a 2% dairy milk. If you like non-dairy milk, you can use sweetened or unsweetened almond milk, vanilla almond milk, coconut milk, or any other variety that you like.
To make a “skinny” version of this drink, use a nonfat milk, dark or bittersweet chocolate, and reduce the caramels by half or use sugar-free caramels.
Add a 1-3 teaspoons instant espresso powder to your drink if you’re looking for a caffeine boost (or decaf espresso if you like the coffee flavor without the caffeine).
This hot chocolate is best when it’s fresh, but you can store it in the fridge for a day or two and reheat it carefully in the microwave or a saucepan.