In a small bowl, whisk together eggs, milk, and vanilla.
In a standing mixer, stir together flour, sugar, baking powder, and salt.
Beat the butter into the flour mixture, one cube at a time. Continue to beat until it resembles coarse crumbs.
Add the 1/2 of the egg-milk mixture and oil and beat the batter is light and fluffy. Add remaining egg-milk mixture and vanilla pudding and mix just until combined.
Take a spatula and scrape the sides of the bowl.
Spread into greased 8 or 9-inch cake pans and smooth tops with a spatula.
Bake for 16-22 minutes, depending on the depth of pans. If the cake layers are thin, they will cook for less time than the thicker layers.
Let cakes cool. Run a knife around edge of cake pan and flip over. Frost with milk chocolate frosting.
To make Chocolate Buttercream Frosting:
In mixing bowl, cream together butter, cocoa, powdered Sugar, and cream until light and fluffy. You may want to add more cream or milk depending on consistency. Once the cake has cooled and has been removed from pans, frost each layer with frosting.
Top with chocolate shavings, chocolate chips, sprinkles, M & M's or whatever your heart desires.
Video
Notes
This recipe makes two 9-inch cake layers or three 8-inch cake layers. If you use three 8-inch cake pans, the layers will be thinner and will cook for less time.
This is one baked good that gets even better the next day, if covered.