Chocolate at its finest! This rich and creamy hot chocolate is super comforting; it’s perfect for a cold winter Christmas Eve! This is made with real chocolate, heavy cream, cocoa powder, and vanilla. This is the best homemade hot chocolate recipe that you can find!

Hot chocolate is a classic must-have during the winter season and holidays, but instead of buying the same old packets every time, you should be asking yourself “how can I make hot chocolate better?” I came up with this recipe because packaged hot chocolate just isn’t doing it for me anymore. My hot chocolate is rich and creamy. Packaged hot chocolate has some chocolate taste to it, while mine kicks up the chocolate taste to the max. I used semi-sweet and bitter-sweet chocolate, plus some cocoa powder. You can change how much chocolate you use. Add more sugar or none at all. It’s totally up to your preference!
How to make Rich & Creamy Hot Chocolate
I loved how this came up. After many attempts to create a better hot chocolate, this one is a true keeper. You can change how much chocolate you use. You can use all semi-sweet or all bitter-sweet. (Full ingredient amounts and complete instructions are available in the recipe card down below).
- Whole Milk: Whole is preferred for creamy hot chocolate, however, you can use 2% milk. If you’re looking for a healthier hot chocolate, you can use 1% or skim, but keep in mind that it’ll be thinner. You can also use dairy-free milk. I recommend almond milk!
- Heavy Cream: There isn’t much that goes into the hot chocolate, but this will give it a slight creamy factor and will bring comfort.
- Bittersweet and Semisweet Chocolate: This is a nice balance of chocolate. Not too sweet, and not too bitter! You can use all bittersweet or semisweet if you prefer. Just make sure you adjust the amount of sugar you add.
- Cocoa Powder: I used dark chocolate cocoa powder, but regular will do. Dutch-processed is a great cocoa powder to use.
- Cornstarch: This is a thickening agent that will give the hot chocolate a silky, smooth texture. If you don’t add this, then the hot chocolate will be thinner in consistency.
- Vanilla Extract
- Sugar: Just a little bit for extra sweetness. You can choose to not add any sugar.
Combine the milk and cornstarch until no lumps remain. Add the milk, heavy cream, and cocoa powder to a small saucepot over medium-low heat. Stir constantly so a film doesn’t form on top of the milk. If you wish to add any spices, do so now! Once you see steam risings and little bubbles forming on the sides of the pot, remove it from the heat. Do not let the hot chocolate boil as it will cause the milk to curdle and it will be grainy. Add the chocolate bars and vanilla to the pot and stir constantly until the chocolate completely melts. It will look grainy at first but keep stirring and it’ll be silky and smooth. Add sugar, if desired. Serve immediately and add any toppings desired.
Tips & FAQs
- Storage: This can be made a day in advance and stored in an airtight container in the fridge. Place a layer of plastic wrap on the surface so a film doesn’t form.
- Reheat: Place the hot chocolate in a saucepot over low heat and stir it constantly until it’s warmed through. Do not let it boil.
- Variations:
- Substitute the chocolate bars for chocolate chips. For one 4oz bar, you will need 3/4 cup of chocolate chips.
- Add some: Marshmallows, Whipped Cream, Chocolate Syrup, Crushed Peppermint Candy, Cinnamon, Cayenne Pepper (for a Mexican hot chocolate twist!), Nutmeg, Peppermint Extract, Instant Espresso Powder
- Substitute half & half for a thinner hot chocolate
- Why do you recommend Dutch-processed cocoa powder? It enhances the flavors of hot chocolate and gives it a smoother finish. It’s also alkalized to remove any acidity (since cocoa beans are naturally tart and acidic) which results in a more mild chocolate taste.
Want the recipe? Click print below! Let me know how it came out for you by tagging me on Instagram (@missravenskitchen) and using #missravenskitchen! Follow my Facebook page for updates as well! Let me know if I need to tweak anything.

Rich & Creamy Hot Chocolate
Ingredients
- 1 3/4 cups whole milk
- 1/4 cup + 1 tbsp heavy cream
- 2 oz bittersweet chocolate bar, chopped
- 2 oz semisweet chocolate bar, chopped
- 1 tbsp cocoa powder, dutch processed preferred
- 1 tsp cornstarch
- 1/2 tsp vanilla extract
- 2 tsp sugar, more or less for preference, optional
Instructions
- Combine the cornstarch and milk, whisking until no lumps remain. In a small saucepot, add the milk, heavy cream, and cocoa powder. Heat over medium-low heat.
- Stir constantly so a film doesn’t form over the top. Add any spices and flavorings you wish to add now.
- Once you see steam rising and little bubbles forming on the sides of the pot, remove it from the heat. Do not let the milk boil. It will curdle and become grainy. Stir in the chopped chocolate and vanilla extract until the chocolate is completely melted.
- Stir in the sugar, if using. Serve immediately and add any toppings.
Notes
Storage: This can be made a day in advance and stored in an airtight container in the fridge. Place a layer of plastic wrap on the surface so a film doesn’t form.
- Reheat: Place the hot chocolate in a saucepot over low heat and stir it constantly until it’s warmed through. Do not let it boil.
Variations:
- Substitute the chocolate bars for chocolate chips. For one 4oz bar, you will need 3/4 cup of chocolate chips.
- Add some: Marshmallows, Whipped Cream, Chocolate Syrup, Crushed Peppermint Candy, Cinnamon, Cayenne Pepper (for a Mexican hot chocolate twist!), Nutmeg, Peppermint Extract, Instant Espresso Powder
- Substitute half & half for a thinner hot chocolate
Why do you recommend Dutch-processed cocoa powder? It enhances the flavors of hot chocolate and gives it a smoother finish. It’s also alkalized to remove any acidity (since cocoa beans are naturally tart and acidic) which results in a more mild chocolate taste.
Nutrition Facts
Calories
596.01Fat (grams)
42.37Sat. Fat (grams)
25.26Carbs (grams)
43.37Fiber (grams)
5.55Net carbs
37.85Sugar (grams)
32.35Protein (grams)
12.06Sodium (milligrams)
97.59Cholesterol (grams)
71.12The nutrition information provided is an estimate and will vary based on cooking methods and the brands of ingredients used. Sugar is not included in this nutritional information.
Leave a comment