Decadent Homemade Hot Chocolate Recipe — Rich, Creamy & Velvety

A rich, creamy homemade hot chocolate ready in under 10 minutes. Made with real chocolate—semisweet and bittersweet—plus cocoa powder and vanilla. This is a simple, luxurious hot chocolate you can make at home.

creamy homemade hot chocolate with marshmallows and chocolate syrup

On a cold day, few things are as comforting as a mug of homemade hot chocolate. This version is thick, velvety, and rich thanks to a generous amount of semisweet and bittersweet chocolate, with cocoa powder and a touch of vanilla for depth. Finish with whipped cream, marshmallows, and a chocolate drizzle for an indulgent treat.

You can prepare this hot chocolate ahead of time and reheat it later—see the storage and reheating notes in the recipe.

Rich & Creamy Homemade Hot Chocolate

rich and creamy homemade hot chocolate in a white mug with a spoon

To make the best hot chocolate, use high-quality real chocolate. Good chocolate contains a higher percentage of cocoa and a smooth cocoa butter that melts evenly, producing a silkier texture and deeper flavor.

homemade hot chocolate with marshmallows and cocoa powder

Difference between Hot Cocoa and Hot Chocolate

Hot cocoa is usually made from cocoa powder, while hot chocolate includes real melted chocolate and sometimes cocoa powder. Because real chocolate contains cocoa butter, hot chocolate is richer and creamier. Hot cocoa tends to be thinner in texture since it lacks that added fat.

rich and creamy homemade hot chocolate dripping off a spoon

Ingredients for Creamy Homemade Hot Chocolate:

ingredients for homemade hot chocolate

Real Chocolate

Use dark chocolate for a deep chocolate flavor. In this recipe, bittersweet and semisweet bars are used. I used two 4 oz bars total, chopped finely so they melt quickly. Chocolate chips work too—a 4 oz bar is just under 1 cup, so substitute the same amount of chips as needed.

If you use milk or white chocolate, reduce or omit added sugar since those chocolates are sweeter. Taste and adjust as you go.

Cocoa Powder (Dutch-Processed)

Dutch-processed cocoa powder has been alkalized to remove acidity, giving hot chocolate a smoother, milder finish. Regular cocoa powder can be used but will be slightly more tart.

Whole Milk

  • The primary base for the drink
  • Substitute any milk you prefer, though whole milk gives the creamiest result

Heavy Cream

  • Adds richness and a velvety mouthfeel
  • Use half-and-half for a lighter drink

Cornstarch

Cornstarch thickens the hot chocolate slightly, creating a silky, smooth texture. Omit it if you prefer a thinner, more traditional consistency.

How to Make Homemade Hot Chocolate

milk being poured into a pot on a burner
Add the milk & cornstarch
cream poured into a silver pot
Add the heavy cream
sugar in a small bowl with a pot of milk
Add sugar to taste
stirring milk with a whisk in a pot
Whisk to combine
cocoa powder with a pot of milk
Cocoa powder
chopped chocolate and a pot of milk
Turn off the heat, then add chocolate and vanilla

Whisk the cornstarch into the milk until smooth. Combine milk, heavy cream, cocoa powder, and any optional spices in a pot over medium-low heat and stir so a skin doesn’t form. When steam rises and small bubbles appear at the edges, remove from the heat—do not boil. Add the chopped chocolate and vanilla, stirring constantly; the mixture may look grainy at first but will become smooth as the chocolate melts. Add sugar only if needed.

whisking hot chocolate in a pot
whisking hot chocolate in a pot
homemade hot chocolate heating in a pot

Once the chocolate is fully melted and the drink has thickened slightly, pour into mugs and top as desired.

homemade hot chocolate being poured into a white mug
homemade hot chocolate with marshmallows and cocoa powder

Toppings and Flavorings

homemade hot chocolate topped with whipped cream
rich and creamy hot chocolate with marshmallows dusted with cocoa powder

Common toppings and flavor additions include:

  • Toppings: marshmallows, whipped cream, chocolate syrup, salted caramel, crushed peppermint
  • Spices: cinnamon, cayenne, nutmeg
  • Flavorings: peppermint extract, vanilla extract, instant espresso powder
creamy homemade hot chocolate topped with marshmallows and drizzled with chocolate syrup

Hot Chocolate Mix as Gifts

Layer the dry ingredients in a mason jar for a thoughtful, edible gift. Add a small card with instructions for how much milk, cream, and vanilla to add. These jars make cozy gifts for the holidays, care packages for someone under the weather, or favors for a winter gathering.

Storing and Reheating Hot Chocolate

Store leftover hot chocolate in an airtight container in the refrigerator for up to a day. To reheat, warm it slowly on the stovetop over low heat and stir constantly to prevent a skin from forming. Avoid boiling, which can curdle the milk and make the texture grainy.

creamy homemade hot chocolate with marshmallows and chocolate syrup

I hope you enjoy this rich and creamy homemade hot chocolate. Share your feedback and how you topped yours—it’s always fun to hear variations and favorites!


Want more? Try these other recipes:

big chocolate cookie held in hand
Giant Flourless Chocolate Cookies
homemade Korean strawberry milk in two glasses with strawberries
Homemade Korean Strawberry Milk
pumpkin chocolate chip muffins with cream cheese filling and streusel topping on a white plate
Pumpkin Chocolate Chip Muffins with Cream Cheese & Streusel
swiss roll cake with jam
Bakery Swiss Roll Cake
6 baked cinnamon apples in a baking dish
The Perfect Baked Cinnamon Apples
custard bread pudding with vanilla sauce and raspberries
Custard Bread Pudding With Vanilla Sauce

Recipe

rich and creamy homemade hot chocolate in a white mug with a spoon
5 from 301 votes
Servings: 4

Rich and Creamy Homemade Hot Chocolate

By Jamie
A rich and creamy homemade hot chocolate ready in under 10 minutes. Made with real chocolate—semisweet and bittersweet—cocoa powder, and vanilla.
Prep: 5 mins
Cook: 4 mins
Total: 9 mins

Ingredients

  • 3 ½ cups whole milk
  • ½ cup heavy cream
  • 4 oz bittersweet chocolate bar, chopped (slightly under 1 cup)
  • 4 oz semisweet chocolate bar, chopped (slightly under 1 cup)
  • 2 Tablespoons Dutch-processed cocoa powder
  • 2 teaspoons cornstarch
  • 1 teaspoon vanilla extract
  • 1 Tablespoon sugar, optional, to taste

Toppings:

  • Marshmallows
  • Whipped cream
  • Chocolate syrup

Optional Spices:

  • Pinch of cinnamon
  • Pinch of instant espresso powder
  • Pinch of nutmeg or cayenne

Instructions

  • Whisk the cornstarch into the milk until smooth. In a pot over medium-low heat, combine the milk, heavy cream, and cocoa powder. Stir frequently to prevent a skin from forming. Add any optional spices now.
  • When steam rises and small bubbles form at the edges, remove the pot from the heat. Do not boil. Add the chopped chocolate and vanilla, stirring constantly until the chocolate fully melts and the mixture becomes smooth. Add sugar to taste if needed.
  • Serve immediately with your favorite toppings.

Notes

Substitutions:

  • Chocolate chips can replace chopped bars; use about the same volume (a 4 oz bar is slightly under 1 cup).
  • If using milk or white chocolate, reduce or omit added sugar and adjust to taste.
  • Regular cocoa powder works, but Dutch-processed cocoa gives a smoother, milder flavor.

Storage & Leftovers:

  • Make ahead and refrigerate in an airtight container for up to a day. Place plastic wrap on the surface to help prevent a skin.
  • Reheat over low heat, stirring constantly to avoid a skin or graininess. Do not boil.

Slow cooker or crock pot:

  • Keep the lid on to prevent a skin from forming and stir occasionally.
  • Use the warm setting and avoid boiling.

Nutrition

Calories: 374 kcal, Carbohydrates: 27 g, Protein: 7 g, Fat: 26 g

Nutrition information is an estimate and should be used as a guideline.

Like this? Leave a comment below!