The closest substitute for evaporated milk in fudge is whole milk simmered until it has reduced by about half. This recipe uses that homemade reduction in classic chocolate fudge, where sugar, butter, chocolate, and marshmallow creme make a smooth, sliceable batch.
Ingredients
- 1⅓ cups (320 ml) whole milk, to reduce to ⅔ cup (160 ml)
- 3 cups (600 g) granulated sugar
- ¾ cup (170 g) unsalted butter, cut into pieces
- ¼ teaspoon (1.5 g) fine salt
- 12 ounces (340 g) semisweet chocolate, finely chopped
- 7 ounces (198 g) marshmallow creme
- 1 teaspoon (5 ml) vanilla extract
- 1 cup (115 g) chopped walnuts or pecans, optional
Instructions
- Prepare the pan and ingredients. Line a 9-inch (23 cm) square pan with parchment, leaving extra paper over two sides so you can lift the fudge out later. Lightly butter the parchment if it is not nonstick. Chop the chocolate and measure the remaining ingredients before you begin cooking; once the sugar syrup is ready, the rest of the steps move quickly.
- Reduce the milk. Pour the whole milk into a wide, heavy-bottomed saucepan. Bring it just to a gentle simmer over medium-low heat, stirring often and scraping the bottom and corners. Keep it at a quiet simmer, not a rolling boil, until it measures about ⅔ cup (160 ml), usually 20–25 minutes. Pour it into a heatproof measuring cup to check the amount. If it is still above the mark, return it to the pan and simmer a little longer. Set aside; it can be warm when added to the fudge mixture.
- Cook the sugar mixture. In a clean, heavy 3- to 4-quart saucepan, combine the reduced milk, sugar, butter, and salt. Heat over medium, stirring until the butter melts and the sugar looks mostly dissolved. Bring the mixture to a steady boil, then stop stirring. Clip a candy thermometer to the side of the pan, making sure its tip is in the syrup but not touching the bottom. Cook to 234°F (112°C), the soft-ball stage. This generally takes about 5–8 minutes once the mixture is boiling, though pan size and stove strength affect the timing. Avoid scraping crystallized sugar from the sides into the syrup.
- Add the chocolate and marshmallow creme. Take the pan off the heat as soon as the syrup reaches 234°F (112°C). Add the chopped chocolate and marshmallow creme. Let them sit for about 30 seconds, then stir steadily until the chocolate has melted and the mixture is glossy and even. Stir in the vanilla and nuts, if using. Work promptly, but do not beat the mixture for a long time; excessive stirring as it cools can make the fudge grainy.
- Fill the pan and let the fudge set. Scrape the mixture into the prepared pan and spread it into the corners with a lightly buttered spatula. Leave it undisturbed at cool room temperature for about 2 hours, until firm enough to cut. Lift it out using the parchment, place it on a cutting board, and cut it into 36 small squares with a sharp knife. Wipe the blade between cuts for neater edges.
Tips
- Measure the reduced milk by volume. Starting with 1⅓ cups (320 ml) and reducing it to ⅔ cup (160 ml) gives you a closer stand-in for canned evaporated milk than pouring the same amount of regular milk directly into the fudge. The wide pan helps water evaporate evenly; use a measuring cup to confirm the final amount rather than guessing from the saucepan.
- Use a thermometer if you can. Fudge depends on the temperature of the sugar syrup, and a few degrees can change whether it sets soft or firm. If you do not have a candy thermometer, drop a little syrup into a glass of cold water: at soft-ball stage it should gather into a soft, pliable ball that flattens when lifted. Keep your fingers out of the hot syrup.
- Keep the heat controlled. A vigorous boil can scorch the milk solids or make the syrup boil over. Choose a saucepan with plenty of headroom, and lower the heat if the bubbles climb too high. Stir the milk while reducing it, but leave the fudge syrup alone once it reaches a steady boil to limit sugar crystals.
- Choose a close alternative thoughtfully. If you have half-and-half, reduce it to the same final ⅔-cup (160-ml) amount. It will make a richer-tasting fudge. Unsweetened canned coconut milk can also be reduced to that volume, but it gives the batch a noticeable coconut flavor. Do not use sweetened condensed milk as a direct substitute; it already contains sugar and will throw off the recipe.
Serving Suggestions
Serve the fudge in small squares at room temperature, when its chocolate flavor and creamy texture are easiest to appreciate. A 9-inch (23 cm) pan makes 36 modest pieces, which work well on a dessert tray alongside crisp cookies, fresh berries, or sliced pears. For a more generous dessert portion, cut the slab into 24 pieces instead.
For gifting or a party platter, arrange the pieces in paper candy cups and keep them cool until serving. Fudge can feel quite rich, so small portions are practical. If it has been refrigerated, let the pieces sit out for 10–15 minutes before serving so they are easier to bite; do not leave the whole batch out for an extended period.
Variations
Make it nut-free: Leave out the walnuts or pecans. For a little crunch without nuts, fold in ½ cup (about 80 g) of crisp rice cereal just before spreading the mixture in the pan. Add it at the end so it stays crisp rather than softening while you stir.
Change the chocolate: Use milk chocolate for a sweeter, softer-tasting result, or use a mix of semisweet and bittersweet chocolate for a less-sweet finish. Keep the total chocolate at 12 ounces (340 g). Very high-percentage chocolate can make the fudge taste more bitter and may give it a firmer texture, so avoid replacing all of the semisweet chocolate with it unless you want that result.
Add a simple flavor accent: Stir in ½ teaspoon (about 1 g) of instant espresso powder with the chocolate, or add ½ teaspoon (2.5 ml) of peppermint extract in place of part of the vanilla. Peppermint extract is potent, so do not use a one-for-one swap for the full teaspoon unless you prefer a strong mint flavor. A small pinch of flaky salt on top is another easy contrast.
Try a dairy-free direction: Unsweetened canned coconut milk can be simmered down to ⅔ cup (160 ml) and used in place of the reduced whole milk. Choose dairy-free chocolate and a marshmallow creme that contains no dairy as well. The coconut flavor will come through, and different products can set differently, so use the thermometer and allow the full setting time before cutting.
Storage and Reheating
Let the fudge set for about 2 hours, then transfer it to an airtight container and refrigerate it within 2 hours of cooking. Separate layers with parchment so the pieces do not stick together. For best texture, keep it refrigerated and use it within 1–2 weeks. Refrigerated fudge is firmer than fudge served at room temperature, so let a portion stand for 10–15 minutes before eating.
To freeze, wrap the whole slab or individual pieces tightly, then place them in a freezer-safe container. Freeze for up to 2–3 months for best quality. Thaw the wrapped fudge in the refrigerator overnight, then bring individual pieces briefly toward room temperature before serving. Avoid repeatedly warming and cooling the batch, which can cause condensation and a sticky surface.
Fudge does not need reheating, and a microwave can melt it unevenly. If a piece is too firm straight from the refrigerator, simply let it stand at room temperature for a short time. Discard any pieces that have been left out longer than 2 hours rather than returning them to storage.
Frequently Asked Questions
Can I use whole milk without reducing it?
It is not the best direct swap. Whole milk contains more water than evaporated milk, so using the same volume can leave the syrup with the wrong balance of liquid and sugar and may make the fudge slow to set or too soft. Simmering 1⅓ cups (320 ml) down to ⅔ cup (160 ml) concentrates it and makes it a closer replacement.
Can I use heavy cream instead?
Heavy cream can be used in the same final volume, but it has substantially more fat than evaporated milk, so the fudge will taste richer and may feel heavier. Half-and-half reduced to ⅔ cup (160 ml) is a closer alternative if you do not have whole milk. In either case, cook the syrup to the recipe’s temperature rather than relying only on the clock.
Why did my fudge turn grainy?
Graininess often comes from sugar crystals forming on the pan sides and getting stirred back into the syrup, or from beating the fudge while it cools. Once the mixture boils, avoid stirring it and do not scrape the sides into the pan. After adding the chocolate and marshmallow creme, stir only until smooth and spread it promptly.
What if the fudge is still soft after setting?
First, allow the full 2 hours at a cool room temperature; warm rooms can slow setting. If it remains very soft, the syrup may not have reached 234°F (112°C), or the milk may not have reduced enough. Chill it to make it easier to cut, but chilling will not correct a syrup that was substantially undercooked.
Can I make the reduced milk ahead?
Yes. Cool the reduced milk, cover it, and refrigerate it for up to 3–4 days. Measure ⅔ cup (160 ml) for the fudge, and warm it gently before adding it to the saucepan so it blends smoothly with the butter and sugar. Do not leave the prepared milk at room temperature for more than 2 hours.
Can I double this recipe?
Doubling makes a large volume that is harder to heat evenly and can be more difficult to control at the soft-ball stage. For reliable results, make two separate batches rather than doubling everything in one saucepan. Use a clean, lined pan for each batch and measure the reduced milk separately for both.
Related
- Sangria Cake Recipe: A Citrus-Studded Red Wine Cake
- Sangria Ice Recipe for Fruity, Wine-Infused Cubes
- Sangria Grape Juice Recipe: A Bright, Alcohol-Free Pitcher
More recipes to cook
Safety notes: safe minimum internal temperatures from USDA FSIS; raw and undercooked fish guidance from the U.S. FDA. Food safety notes
Spotted an error? Tell us and we will correct it (corrections policy).