In a medium saucepan, whisk together the egg yolks, sugar, cornstarch, and a pinch of salt until combined. Gradually whisk in the whole milk until smooth. Place the saucepan over medium heat and cook, stirring constantly, until the mixture thickens and begins to bubble, about 8-10 minutes.
Once the pudding has thickened, remove it from heat. Stir in the chopped milk chocolate and unsweetened chocolate until completely melted and smooth. Add the vanilla extract and mix well.
Transfer the pudding to a clean bowl. Cover the surface with plastic wrap to prevent a skin from forming, and let it cool to room temperature. Refrigerate for at least 2 hours to set.
In a large mixing bowl, combine the heavy whipping cream and sugar. Using an electric mixer, whip on high speed until soft peaks form. Be careful not to overwhip.
In your chosen dish, layer the bottom with vanilla wafer cookies. Add a layer of sliced bananas, followed by a scoop of the chocolate pudding. Repeat layers until all ingredients are used, finishing with pudding on top.
Spread the whipped cream over the final layer of pudding. Garnish with additional banana slices and crumbled vanilla wafers if desired.
Refrigerate the assembled pudding for at least 2 hours before serving to allow flavors to meld. Enjoy!