01 - Preheat oven to 350°F. Grease and flour two 8-inch round cake pans.
02 - Sift together flour, sugar, cocoa powder, baking powder, baking soda, and salt in a large bowl.
03 - Add eggs, milk, oil, and vanilla extract. Beat on medium speed until smooth and thoroughly combined.
04 - Carefully pour in boiling water while mixing. Continue beating until batter becomes glossy and thin.
05 - Divide batter evenly between the prepared pans.
06 - Bake for 30-35 minutes until a toothpick inserted into the center comes out clean.
07 - Let cakes cool in pans for 10 minutes, then remove to wire racks to cool completely.
08 - Beat softened butter until creamy. Gradually sift in powdered sugar and cocoa powder, beating until fully incorporated.
09 - Mix in vanilla extract and salt. Add milk one tablespoon at a time until frosting reaches spreadable consistency.
10 - Place first cake layer on serving plate. Spread frosting evenly over top.
11 - Position second layer on top. Frost top and sides completely, smoothing with spatula. Decorate as desired before slicing.