01 - Preheat oven to 350°F. Grease and flour two 8-inch round cake pans, lining the bottoms with parchment paper for easy release.
02 - Sift together flour, sugar, cocoa powder, baking powder, baking soda, and salt in a large mixing bowl to ensure even distribution.
03 - Add eggs, milk, vegetable oil, and vanilla extract to the dry mixture. Beat on medium speed with an electric mixer until smooth and thoroughly combined, approximately 2 minutes.
04 - Carefully pour in the boiling water while mixing on low speed. Continue mixing until the batter becomes thin and glossy, about 1 additional minute.
05 - Divide batter evenly between the prepared pans. Bake for 30 to 35 minutes until a wooden toothpick inserted into the center emerges clean.
06 - Allow cakes to rest in pans for 10 minutes before carefully removing. Transfer to wire racks and cool completely to room temperature before frosting.
07 - Cream softened butter in a mixing bowl until smooth and pale. Gradually sift in powdered sugar and cocoa powder, beating continuously until fully incorporated and fluffy.
08 - Mix in vanilla extract and salt. Add milk one tablespoon at a time, beating until the frosting reaches a smooth, spreadable consistency.
09 - Place one cooled cake layer on a serving plate. Spread a generous layer of frosting over the top. Position the second layer atop the first, then frost the top and sides evenly with an offset spatula.
10 - Slice and serve immediately or refrigerate until ready to serve. Allow refrigerated cake to sit at room temperature for 20 minutes before serving for optimal texture.