Preheat oven to 180 degrees C. Grease and flour two 23cm round cake tins.
In a medium bowl, stir together the sugar, flour, cocoa, bicarb soda, baking powder and salt. Add the eggs, milk, oil and vanilla then mix for 3 minutes with an electric mixer. Stir in the boiling water by hand. Pour evenly into the two prepared tins.
Bake for 30 to 35 minutes in the preheated oven, until a skewer inserted comes out clean. Cool for 10 minutes before removing from tins to cool completely.
To make the icing, cream butter until light and fluffy. Stir in the cocoa and icing 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 icing, then stack them onto a serving plate. Ice the outside of the cake.