The condensed milk turns glossy as the cocoa disappears into it, and the saucepan already smells deeply chocolatey before the chips go in. Keep the heat low and the mixture smooth; letting it bubble is an easy way to scorch the milk solids before the chocolate has a chance to melt. That gentle start gives this hot chocolate fudge its even, creamy texture.
I like the blend of milk chocolate and semisweet chocolate here because it tastes rich without tipping into cloying sweetness. Mini marshmallows pressed into the top give each square that familiar hot-cocoa finish, while the fudge underneath stays dense and smooth. Give the pan a full chill, then let it stand briefly before cutting, and you’ll have neat pieces with a soft-looking marshmallow top.

Kitchen Note
Give the chilled slab 10 minutes at room temperature before you cut it. That short rest takes the hard edge off the chocolate, so the marshmallow topping and fudge are easier to slice cleanly.
Save this Hot Chocolate Fudge for a chocolate-rich square topped with soft mini marshmallows.
Why This Fudge Uses Two Kinds of Chocolate
Sweetened condensed milk brings concentrated sweetness and a thick, creamy base, while the melted chocolate gives the fudge its structure as it cools. The two kinds of chips have different jobs: milk chocolate makes the flavor round and mellow, and semisweet chocolate offsets some of that sweetness with a deeper cocoa taste. Together, they keep the squares tasting like chocolate rather than just sugar.
The unsweetened cocoa powder matters too. Whisking it into the condensed milk before adding the chips disperses it through the base, instead of leaving little dry pockets in the finished fudge. It also builds a more pronounced cocoa note without changing the smooth, sliceable texture. The result is rich, but still balanced enough that the marshmallow topping doesn’t make each bite taste overly sweet.
That balance is why I wouldn’t treat the chocolate as one interchangeable ingredient. Changing the chocolate shifts both sweetness and firmness, so if you want to adjust the flavor, change the types of chips rather than adding extra cocoa or more condensed milk.
What the Cocoa and Condensed Milk Contribute

- Sweetened condensed milk — It supplies the thick, sweet base that binds the melted chocolate into fudge. Evaporated milk isn’t a direct substitute; it’s thinner and unsweetened, so the mixture won’t have the same balance or set.
- Unsweetened cocoa powder — This adds a clear cocoa flavor without extra sweetness. A fresh, lump-free powder whisks in most easily; Dutch-process unsweetened cocoa also works here because the recipe doesn’t rely on cocoa for leavening.
- Milk and semisweet chocolate chips — Use chips you enjoy eating, since chocolate is the main flavor. Their combination balances mellow sweetness with a more robust chocolate taste; a semisweet-only adjustment is described below.
- Vanilla extract — Stir it in after taking the pan off the heat so its aroma doesn’t cook away. Pure vanilla gives a fuller flavor, though standard vanilla extract works just as well.
- Mini marshmallows — Their small size spreads across the top without making the squares difficult to cut. Choose soft marshmallows that press into the surface easily rather than dry ones that feel firm in the bag.
- Softened butter — This greases the parchment and pan sides so the slab lifts out cleanly. Softened butter spreads evenly without tearing the paper or leaving big slick patches.
Building Smooth Fudge Without Scorching the Base
Line and grease the square pan
Line an 8-inch square pan with parchment paper, leaving enough overhang to lift the fudge out later. Grease the parchment and the sides of the pan with the softened butter. Press the paper into the corners so it sits flat rather than buckling beneath the thick mixture. The overhang gives you a useful handle once the slab is firm.
Warm the cocoa base gently
Whisk the sweetened condensed milk, cocoa powder, and kosher salt together in a medium saucepan over low heat. Keep whisking for 2 to 3 minutes, until the cocoa is fully mixed in and the base is smooth and hot. Don’t let it simmer; bubbling can scorch the milk solids and leave a burnt taste. The mixture should be hot and uniform, not boiling.
Melt the chips and add vanilla
Add the milk chocolate chips and semisweet chocolate chips, then stir constantly as they melt. This takes 3 to 5 minutes; keep the pan over low heat and scrape across the bottom so the chocolate doesn’t catch. When no chips remain and the mixture looks smooth, remove the pan from the heat. Stir in the vanilla, then spread the fudge evenly into the prepared pan.
Press on the marshmallows and chill
Scatter the mini marshmallows over the surface while the fudge is still soft, then press them in gently so they stay attached. Refrigerate the pan until the fudge is firm, for at least 3 hours. Let it stand at room temperature for 10 minutes, lift the slab out using the parchment, and cut it into 36 pieces. If the marshmallows drag under the knife, wipe the blade between cuts.
Two Easy Ways to Change the Chocolate or Topping
Make it with all semisweet chocolate
Use semisweet chips in place of the milk chocolate chips, keeping the total amount of chocolate the same. The fudge will taste less sweet and more cocoa-forward, with a slightly firmer bite once chilled.
Leave off the marshmallow topping
Skip the mini marshmallows for a plain chocolate top and a more concentrated fudge bite. The chocolate mixture and chilling method stay the same, so this is an easy option when you want the fudge without the hot-cocoa-style finish.
Storage and Serving
- Refrigerator: Store the pieces in an airtight container for up to 2 weeks. The fudge will be firmer straight from the fridge.
- Freezer: Freeze in a sealed container, with parchment between layers, for up to 2 months. Thaw the pieces in the refrigerator so condensation doesn’t collect on the marshmallows.
- Serving: This fudge doesn’t need reheating. Let refrigerated pieces sit briefly at room temperature before serving; microwaving can soften the chocolate and melt the marshmallow topping.
Questions That Come Up With Hot Chocolate Fudge

Hot Chocolate Fudge
Ingredients
Equipment
Method
- Line an 8-inch square pan with parchment paper, leaving some overhang.
- Grease the paper and sides of the pan with the butter.
- Whisk together the sweetened condensed milk, cocoa powder, and salt in a medium saucepan over low heat until smooth and hot, 2 to 3 minutes; do not let it simmer.
- Add the milk chocolate chips and semisweet chocolate chips, stirring constantly until melted and smooth, 3 to 5 minutes.
- Remove the pan from the heat.
- Stir in the vanilla.
- Spread the fudge evenly in the prepared pan.
- Scatter the mini marshmallows over the fudge.
- Gently press the mini marshmallows into the surface.
- Refrigerate until firm, at least 3 hours.
- Let stand at room temperature for 10 minutes.
- Lift the fudge out with the parchment and cut into 36 pieces.





