Into a saucepan, add the milk, vanilla extract, kosher salt, granulated sugar, and dark chocolate, sift the cocoa powder, and add the cornstarch slushy (in a small mixing bowl mix the cornstarch and a little bit of water).
Cook the mixture over medium heat mixing constantly with a whisk until the chocolate is melted and the mixture thickens up. This can take about 10 minutes so be patient.
When the mixture thickens, add the butter, and mix until the butter is completely melted. Remove from heat and strain the mixture into a large bowl or baking pan to speed up the cooling process.
Cover the top with plastic wrap so that the plastic wrap is directly touching the top of the frosting. This will prevent skin from forming.
Let it cool at room temperature for 30 minutes, and then transfer it to the fridge to cool for another 1-2 hours. (depending on the thickness you are looking for)
Or to make the process even quicker, place it in the freezer for 30 minutes to allow it to cool quickly.
Lay the first cake layer on the surface you frost on. Use the chocolate frosting to create a border around the edges of the first cake layer.
Then fill the middle with the chocolate pudding and smooth it out with a spoon or a spatula.
Top with the second cake layer and frost the cake with the rest of the frosting.
Press the chocolate cake crumbs on the sides of the cake and on the top if desired. Serve and enjoy!