In a small bowl, combine sugar and cocoa powder. Stir together and set aside.
In a small saucepan, over medium heat, melt butter. Whisk in milk followed by the sugar and cocoa powder mixture. Whisk continuously, beating out any lumps as they form, until mixture begins to thicken and bubble 1-3 minutes.
Remove from heat and whisk for 30 seconds to whisk some of the heat out of the sauce. Stir in optional vanilla and allow sauce to sit at room temperature to continue to cool slightly as you assemble the rest of your ingredients.
Combine ice cream, milk, and 3 tablespoons* of the sauce in your blender and blend until well-mixed and pourable.
Pour into a glass, top with optional whipped cream and drizzle the remaining fudge sauce over the top. Enjoy!
*If using pre-made fudge sauce (store-bought or homemade) use 3 tablespoons of sauce for your shake.*If you find your sauce has simmered down to make less than or exactly 3 tablespoons, don't worry. All the chocolate flavor is still there, there's just less sauce because liquid has evaporated as the sauce thickened. Just reserve a little bit for drizzling (if desired) and blend the rest of it into the shake.