½ cup heavy cream
14-ounce can sweetened condensed milk (1 1/4 cups)
3 cups semisweet chocolate (3 cups chopped chocolate bars or chips)
3/4 cup unsweetened baking chocolate (4 ounces)
wooden sticks, lollipop sticks, candy canes, or bamboo skewers
optional, crushed candy canes, marshmallows and/or cocoa powder
Line an 8 x 8-inch pan or a 9 x 9-inch pan with foil and set aside.
Combine the cream and sweetened condensed milk in a heavy-bottomed saucepan over medium heat. Heat until it is steaming, but not boiling, stirring occasionally to keep it from scorching.
Add all of the chocolate and remove from the heat. Allow the chocolate to melt, undisturbed, for 10 minutes.
After 10 minutes, whisk firmly until it is thick and shiny. You can add a few drops of flavoring extract or oil at this point, or add some powdered espresso or vanilla. Whisk vigorously again to incorporate the flavoring (if used.)
Use a rubber or silicone spatula to spread the mixture out evenly in your prepared, foil-lined pan.
Allow to cool at room temperature for 12 hours or overnight so that it firms slowly.
Take the fudge from the pan and remove the foil. Place on a cutting board.
Using a knife heated with hot water and wiped dry, cut the fudge into 16 equal-sized cubes. You can either stick a lollipop stick (or candy cane) into the center of each block or leave it as is. Additionally, you can press the cut sides of the fudge into crushed candy canes, roll them in cocoa powder, or top them with marshmallows.
Eat immediately or wrap tightly and store at room temperature.