I’m sharing a spoonable, pudding-like take on classic drinking chocolate in my Italian Hot Chocolate Recipe that explains why it’s nothing like ordinary, watery cocoa.
I never expected a cup could behave like dessert, but this Italian Hot Chocolate Recipe does. It is thick, almost pudding-like, and the kind of Rich Hot Chocolate Recipe that makes you slow down to watch a spoon leave a ribbon.
I used whole milk and good dark chocolate so the taste is deep, not sugary sweet, with a fatness that borders on decadent. Sometimes I mess up the stir or let it bubble too long and still its perfect, oddly.
If you’re curious about a hot cocoa that feels like something else entirely you’ll want to try it.
Ingredients
- Whole milk: protein, calcium and fat makes drink creamy and filling, not low calorie.
- Dark chocolate: rich in antioxidants, adds bitter cocoa flavor and carbs, gives satiety and depth.
- Cocoa powder: intense chocolate notes, low fat if unsweetened, adds fiber and deep color.
- Cornstarch: thickens without flavor, mostly carbs, helps make that pillowy velvet texture.
- Sugar: sweetens and balances bitterness, simple carbs so use sparingly if watching intake.
- Heavy cream: adds luxury, lots of fat and calories, makes it silky and indulgent.
- Vanilla extract: small flavor boost, tiny carbs, rounds bitterness and lifts aroma, subtle and homey.
Ingredient Quantities
- 4 cups (1 L) whole milk
- 1/2 cup (120 ml) heavy cream
- 8 oz (225 g) good quality dark chocolate, 60 to 75% cocoa, chopped
- 3 tbsp (25 g) unsweetened cocoa powder, sifted
- 3 tbsp (24 g) cornstarch (or potato starch)
- 3 to 4 tbsp (37 to 50 g) granulated sugar, more or less to taste
- 1 tsp vanilla extract
- pinch of fine sea salt
- whipped cream or extra chopped chocolate for serving, optional
How to Make this
1. In a small bowl whisk together the cornstarch, sifted cocoa powder and 1 cup of the cold milk until totally smooth with no lumps, then stir in the sugar and set aside.
2. Chop the dark chocolate fine and put it to one side so it melts fast later.
3. Pour the remaining milk and the heavy cream into a medium saucepan, add a pinch of sea salt, warm over medium low heat until the mixture is steaming and tiny bubbles form at the edges but do not let it boil.
4. Temper the starch mixture by whisking a ladle of the hot milk into it, fast, then pour the warmed slurry back into the pan while whisking constantly.
5. Keep cooking over low to medium low heat, whisking constantly, until the mixture thickens to a pudding like consistency, about 4 to 8 minutes depending on your stove. Lower the heat if it looks like it’s about to boil.
6. Remove from the heat, stir in the chopped dark chocolate and vanilla extract until everything is silky and the chocolate is fully melted. Taste and add more sugar if you want it sweeter.
7. If it gets too thick for drinking, whisk in a splash of hot milk to loosen it. If it has any bits, push it through a fine mesh strainer.
8. Serve hot in warmed mugs topped with whipped cream or extra chopped chocolate. Sip slowly, its rich and intense so a little goes a long way.
Equipment Needed
1. Medium saucepan (2–3 qt) for heating the milk and cream
2. Small mixing bowl for whisking the cornstarch, cocoa and cold milk
3. Whisk for smoothing the slurry and stirring while cooking
4. Ladle to temper the starch mixture with hot milk
5. Heatproof spatula or wooden spoon for scraping and stirring
6. Fine mesh strainer to push the hot chocolate if it has bits
7. Chef’s knife and cutting board to finely chop the dark chocolate
8. Measuring cups and spoons (or a kitchen scale) and a mug or two for serving
FAQ
Italian Hot Chocolate Recipe Substitutions and Variations
- Whole milk: use unsweetened oat or almond milk (same volume) for dairy free; it’ll be a bit thinner, so add 1 to 2 tbsp butter or 2 tbsp cornstarch if you want the same richness.
- Heavy cream: swap with full fat canned coconut milk or half and half (same volume); coconut milk gives a richer, silkier hot chocolate, half and half will be lighter.
- Dark chocolate (8 oz): use equal weight semisweet or bittersweet chocolate chips or a chocolate bar of similar cocoa percent; if you only have cocoa powder, mix about 3/4 cup cocoa + 6 tbsp butter + 1/2 cup sugar and melt together as a rough substitute.
- Cornstarch: replace with tapioca starch, arrowroot, or potato starch 1:1; you can also use 3 tbsp all purpose flour but cook a little longer so it loses the raw flour taste.
Pro Tips
– Whisk the cornstarch and cocoa into the cold milk until it’s totally smooth, no lumps. If you still see bits push the mixture through a fine mesh or blitz it with a stick blender, gritty hot chocolate is the worst.
– Keep the milk on medium low and watch it closely, dont let it boil. When tiny bubbles form at the edges lift the pan or lower the heat, boiling will make the starch go gluey and can scorch the milk.
– Chop the chocolate very fine so it melts instantly when you stir it in off the heat. For an even silkier texture add the chocolate in two batches and stir until completely melted before adding the rest.
– Taste and adjust sweetness and salt at the end, chocolate bars vary alot. If it gets too thick for sipping, loosen with a splash of hot milk not cold, and reheat gently in short bursts while whisking.

Italian Hot Chocolate Recipe
I’m sharing a spoonable, pudding-like take on classic drinking chocolate in my Italian Hot Chocolate Recipe that explains why it’s nothing like ordinary, watery cocoa.
4
servings
697
kcal
Equipment: 1. Medium saucepan (2–3 qt) for heating the milk and cream
2. Small mixing bowl for whisking the cornstarch, cocoa and cold milk
3. Whisk for smoothing the slurry and stirring while cooking
4. Ladle to temper the starch mixture with hot milk
5. Heatproof spatula or wooden spoon for scraping and stirring
6. Fine mesh strainer to push the hot chocolate if it has bits
7. Chef’s knife and cutting board to finely chop the dark chocolate
8. Measuring cups and spoons (or a kitchen scale) and a mug or two for serving
Ingredients
4 cups (1 L) whole milk
1/2 cup (120 ml) heavy cream
8 oz (225 g) good quality dark chocolate, 60 to 75% cocoa, chopped
3 tbsp (25 g) unsweetened cocoa powder, sifted
3 tbsp (24 g) cornstarch (or potato starch)
3 to 4 tbsp (37 to 50 g) granulated sugar, more or less to taste
1 tsp vanilla extract
pinch of fine sea salt
whipped cream or extra chopped chocolate for serving, optional
Directions
- In a small bowl whisk together the cornstarch, sifted cocoa powder and 1 cup of the cold milk until totally smooth with no lumps, then stir in the sugar and set aside.
- Chop the dark chocolate fine and put it to one side so it melts fast later.
- Pour the remaining milk and the heavy cream into a medium saucepan, add a pinch of sea salt, warm over medium low heat until the mixture is steaming and tiny bubbles form at the edges but do not let it boil.
- Temper the starch mixture by whisking a ladle of the hot milk into it, fast, then pour the warmed slurry back into the pan while whisking constantly.
- Keep cooking over low to medium low heat, whisking constantly, until the mixture thickens to a pudding like consistency, about 4 to 8 minutes depending on your stove. Lower the heat if it looks like it's about to boil.
- Remove from the heat, stir in the chopped dark chocolate and vanilla extract until everything is silky and the chocolate is fully melted. Taste and add more sugar if you want it sweeter.
- If it gets too thick for drinking, whisk in a splash of hot milk to loosen it. If it has any bits, push it through a fine mesh strainer.
- Serve hot in warmed mugs topped with whipped cream or extra chopped chocolate. Sip slowly, its rich and intense so a little goes a long way.
Notes
- Below you’ll find my best estimate of this recipe’s nutrition facts. Treat the numbers as a guide rather than a rule—great food should nourish both body and spirit. Figures are approximate, and the website owner assumes no liability for any inaccuracies in this recipe.
Nutrition Facts
- Serving Size: 240g
- Total number of serves: 4
- Calories: 697kcal
- Fat: 44.1g
- Saturated Fat: 26.4g
- Trans Fat: 0.5g
- Polyunsaturated: 1.5g
- Monounsaturated: 12.5g
- Cholesterol: 79mg
- Sodium: 146mg
- Potassium: 720mg
- Carbohydrates: 49.8g
- Fiber: 8.1g
- Sugar: 34.3g
- Protein: 14g
- Vitamin A: 750IU
- Vitamin C: 0.5mg
- Calcium: 353mg
- Iron: 6.85mg