In a medium size bowl combine the yolks and sugar. Whisk together until pale in color. Next add in the cocoa, cornstarch, espresso and salt. Whisk together until a thick paste is formed.
Combine the 3 cups of milk with 1 cup of cream. Slowly whisk into the cocoa mixture until smooth.
Pour into a medium size heavy bottomed sauce pot. Slowly bring up to heat over medium, stirring constantly with a whisk. Cook until thickened and it coats the back of a wooden spoon.
Remove from heat and add in the chopped chocolate and vanilla. Whisk together.
Pour the mixture through a fine mesh strainer into a large clean bowl. Cover with plastic wrap and place in the fridge for 2-3 hours or until chilled and firmed up. Can be made 2-3 days in advance. Whisk until smooth before serving.
Whip the remaining 2 cups of cream with the powdered sugar until soft peaks form. Serve the pudding in small bowls or jars, topped with whipped cream and chopped chocolate.
Recipe Courtesy of Megan Mitchell