Add the milk, hot chocolate mix, chocolate syrup, marshmallow fluff (if using), and ice (in that order) to a high-powered blender.
Process the mixture until smooth.
Pour into glasses.
Pipe whipped cream on top with some chocolate shaving or sprinkles, if desired.
Serve with a thick straw and enjoy!
Notes
Use crushed ice, not cubes, if your blender isn't high-powered. Cubed ice in a weaker blender leaves the drink chunky instead of smooth.
Don't over-blend. A few tiny ice bits are fine. The original Serendipity 3 version isn't perfectly smooth, and over-blending turns this into a smoothie instead of a proper frozen hot chocolate.
1 (1-ounce) hot cocoa packet = about 2 tablespoons loose mix if you're using hot cocoa from a canister instead of individual packets.
Add the ice last when loading the blender. It helps everything blend more evenly.
This drink is best served immediately. Leftovers separate and turn icy in the refrigerator (see the Storage section for the best option).
The marshmallow fluff is optional, but it adds a subtle marshmallow flavor and makes the drink taste even more like classic hot chocolate.