01 - In a medium saucepan, whisk together sugar, cocoa powder, cornstarch, and salt.
02 - Gradually add milk while whisking continuously until the mixture reaches a smooth consistency.
03 - Place saucepan over medium heat and cook while whisking constantly until the mixture thickens and begins to bubble, approximately 5-7 minutes.
04 - Remove from heat and add chopped semisweet chocolate and vanilla extract; whisk until chocolate is fully melted and pudding is smooth.
05 - Pour pudding into individual serving dishes and press plastic wrap directly onto the surface to prevent skin formation.
06 - Refrigerate for at least 2 hours until chilled and set.
07 - In a cold mixing bowl, beat heavy cream, powdered sugar, and vanilla extract until soft peaks form.
08 - Top each pudding with a generous dollop of whipped cream and serve immediately.