In a large saucepan off heat whisk together the sugar and cornstarch. Add the cream, beer, and egg yolk, whisk until well combined. Add the chocolate.
Bring to a boil, stirring continually over medium heat. Whisk continually for 1 minute, remove from heat.
Add the butter and vanilla, stir until well combined.
Pour into serving containers, chill until set, about 2 hours.
To make the whipped cream, add the cream and powdered sugar to a stand mixer. Beat on high until soft peaks form. While mixer is running add the stout and vanilla, beat until soft peaks return.
Top pudding with whipped cream prior to serving.