The Best Homemade Hot Chocolate Recipe (Thick & Creamy)

Picture this: it’s brutal outside, wind rattling the windows, and you’re curled up under a blanket with a mug so rich it coats the spoon like velvet. One sip and your shoulders drop, the day melts away. That, my friend, is what we’re chasing today—the kind of hot chocolate that ruins the powdered packets forever.

This isn’t the thin, watery stuff you drank as a kid. This is proper European-style drinking chocolate: thick enough to stand a churro in, creamy enough to feel decadent, but made in ten minutes with stuff you probably already have. I’ve tested dozens of versions over the years (Paris cafés, Mexican abuelitas, late-night recipe tinkering), and this one wins every single time.

Ingredients & Substitutions

Here’s exactly what you need for four generous mugs (or two ridiculously indulgent ones).

IngredientAmount (US)Amount (Metric)Notes & Best Choices
Whole milk4 cups1 literThe backbone of creaminess. 2% works in a pinch, but whole is non-negotiable for real luxury.
Heavy cream½ cup120 mlThis is the secret to that spoon-coating texture.
Good dark chocolate (60-70%)7 oz / 200g200gBars, not chips. Valrhona, Callebaut, Lindt 70%, or even Trader Joe’s Pound Plus. Chop it fine.
Unsweetened cocoa powder3 Tbsp25gDutch-process if you can—deeper color, smoother flavor. Natural works too.
Cornstarch2 tsp6gThe thickener. Don’t skip it unless you want soup. Arrowroot works for corn-free.
Granulated sugar3–5 Tbsp40-65gStart with 3, taste, add more. Depends on how bitter your chocolate is.
Fine sea salt¼ tsp¼ tspTrust me, it makes the chocolate sing.
Pure vanilla extract1 tsp5 mlAdd after cooking or it loses magic.
Optional flavor kicksPinch of cinnamon, cayenne, espresso powder, orange zest—more on that later.

Dairy-free? Use full-fat coconut milk (the canned kind) instead of milk + cream. Oat milk works too but won’t get quite as thick—bump the cornstarch to 1 Tbsp. Almond milk turns out too thin for my taste.

See also  Quick & Easy Roasting Frozen Broccoli That’s Actually Crispy

For the chocolate, higher than 70% can make it bitter and waxy. Lower than 55% and you lose depth. 62-68% is the sweet spot.

Step-by-Step Instructions

Grab a heavy-bottomed saucepan. Medium heat.

  1. Whisk the cornstarch, cocoa powder, sugar, and salt together in the cold pot first. Dry-whisk eliminates lumps—learned that trick the hard way after too many flecked mugs.
  2. Pour in the milk and cream. Cold liquids. Whisk until everything dissolves. Looks like chocolate milk at this point.
  3. Turn the heat to medium. Stir pretty constantly with a whisk or silicone spatula. You’re waiting for tiny bubbles around the edge and the first wisp of steam—about 5-7 minutes. Don’t walk away; milk loves to scorch when you’re not looking.
  4. When it’s steaming, dump in all the chopped chocolate at once. Switch to the spatula now. Stir slow and steady. The chocolate melts into glossy ribbons. Keep going until it’s completely smooth and starting to thicken—another 2-3 minutes.
  5. Here’s the crucial part most recipes skip: cook it one more minute after it looks done. That extra 60 seconds is what takes it from “nice” to “holy hell, spoon stands upright.” You’ll feel it coat the spatula heavily.
  6. Pull it off the heat. Stir in the vanilla and any extras (cinnamon, pinch of chili, whatever your heart desires).
  7. Taste it. Need sweeter? Stir in another spoon of sugar—it melts right in while hot.

Pour into mugs. Watch the surface gleam like liquid satin. Let people top it themselves—whipped cream, marshmallows, flaky salt, shaved chocolate, whatever makes them happy.

See also  Best Finger Food Ideas for Holiday Parties

Cooking Techniques & Science (The Nerdy Bit I Love)

Why cornstarch and not just more chocolate? Chocolate alone thickens, sure, but it gets grainy and temperamental. Cornstarch gives you that silky, almost pudding-like body without masking flavor. It’s the same trick Italian hot chocolate (cioccolata calda) uses in Florence—same velvety result.

The cold-start method matters. Starting with cold liquid lets the starch granules swell slowly and evenly. Hot liquid? They clump instantly and you’re fishing out cocoa boulders. Science, baby.

And that final minute of cooking after it thickens? You’re gelatinizing the starch completely. Stop too early and it thins out as it cools. Patience here is everything.

Storage, Reheating & Make-Ahead Magic

This stuff keeps beautifully. Pour leftovers into a jar, lid on, fridge for up to 4 days. It’ll set up almost like pudding—that’s normal.

To reheat: gentle is the name of the game. Stovetop over low heat, whisking constantly, splash of milk if it’s too thick. Microwave works too—30-second bursts, stir like crazy between. Never boil it again or the cornstarch breaks and you get watery sadness.

Make-ahead trick: do the whole thing the day before. It actually tastes deeper after a night in the fridge—flavors marry. Just rewarm slowly.

Variations That’ll Ruin All Other Hot Chocolate For You

Mexican-style: Add ½ tsp cinnamon + ⅛ tsp cayenne + pinch of nutmeg with the dry ingredients. Top with a cinnamon stick. Feels like Oaxaca in December.

Mocha: Dissolve 1 tsp instant espresso powder with the cocoa. Bitter edge cuts the sweetness perfectly.

Peppermint: Stir in ¼ tsp peppermint extract with the vanilla. Crushed candy cane rim optional but encouraged.

See also  The Christmas Morning Casserole That Actually Delivers Magic

Boozy: Off heat, swirl in 1-2 Tbsp Kahlúa, Baileys, bourbon, amaretto, or spiced rum per mug. Instant grown-up bliss.

Orange: Zest half an orange into the pot with the chocolate. Strain if you hate bits, but I love the specks.

Salted caramel: Stir 2 Tbsp dulce de leche in with the chocolate and finish with flaky sea salt.

Serving & Pairing Suggestions

This isn’t a “sip politely” drink. This is a lean-in, both-hands-around-the-mug, maybe moan a little situation.

Whip cream yourself—30 seconds with a whisk, touch of powdered sugar, splash of vanilla. Dollop floats like a cloud.

Churros for dipping are classic for a reason. Fresh donuts work too. Even buttered toast torn into soldiers—don’t judge till you try it.

For cookies: shortbread, biscotti, anything crisp that you can dunk until it softens just enough.

Want to be fancy? Grate extra chocolate over the top so it melts in little pockets. Or torch a marshmallow till it’s leopard-spotted.

When This Hot Chocolate Owns the Moment

This is peak winter soul-medicine. First snowfall. Christmas Eve after the kids finally crash. 3 p.m. February darkness when you’re questioning all life choices.

It’s also killer for entertaining—make a pot, set out toppings, let people customize. Snowed-in dinner party? Start with this, end with red wine, everyone stays forever.

The Final Word

You now own the recipe that makes people text you at 11 p.m. asking if you’ll make it again tomorrow. It’s ten minutes of work for something that feels like pure love in a cup.

Don’t overthink it. Use good chocolate, cook that last minute, taste as you go. That’s literally it.

Now go make it. The kettle’s already scared.

FAQs

Can I make it without cornstarch?
You can, but it’ll be thinner—more American-style than European thick. Reduce the milk by ½ cup if you skip it.

My hot chocolate separated/got oily—what happened?
You boiled it hard after adding chocolate. Fat separates above 180°F once the emulsion breaks. Next time, gentle heat only.

Is it okay to use milk chocolate instead of dark?
It’ll be cloyingly sweet and lack depth. If you must, cut the sugar to 1 Tbsp and expect more of a dessert than a drink.

Can I double the recipe?
Absolutely. Just use a bigger pot and give it an extra minute or two to thicken.

Why does mine taste gritty?
Either undissolved cocoa (whisk dry ingredients better next time) or you used chocolate chips with stabilizers. Real bar chocolate melts smoother.

There. Now you’re dangerous. Go forth and ruin packet hot cocoa for everyone you love.