Preheat oven to 350 degrees F. Grease and flour either two 9 inch cake pans or one 9 x 13 inch pan.
Use the first set of ingredients to make the cake. In a medium bowl, stir together the sugar, flour, cocoa, baking powder, baking soda and salt. Add the eggs, milk, oil and vanilla, mix for 3 minutes with an electric mixer. Stir in the boiling water by hand. Pour evenly into the pans.
Bake for 30 to 35 minutes in the preheated oven, until a toothpick inserted comes out clean. Cool for 10 minutes before removing from pans to cool completely.
To make the frosting, use the second set of ingredients. NOTE: If you are making this cake in a 9 x 13 pan, you may want to cut the frosting ingredients in half. Cream butter until light and fluffy. Stir in cocoa and confectioners' sugar alternately with the milk and vanilla. Beat to a spreading consistency.
Split the layers of cooled cake horizontally, cover the top of each layer with frosting, then stack them onto a serving plate. Frost the outside of the cake