01 - Preheat oven to 350°F. Generously grease two 8-inch round cake pans and line with parchment paper.
02 - Sift flour, sugar, cocoa powder, baking powder, baking soda, and salt into a large mixing bowl.
03 - Add eggs, milk, oil, and vanilla extract to the dry mixture. Beat on medium speed until completely smooth and well combined, about 2 minutes.
04 - Carefully pour in boiling water while mixing on low speed. Continue mixing until batter becomes glossy and thin.
05 - Divide batter evenly between prepared pans. Bake for 30-35 minutes until a toothpick inserted in the center emerges clean.
06 - Let cakes rest in pans for 10 minutes before transferring to wire racks. Cool completely before frosting, about 1 hour.
07 - Beat softened butter in a large bowl until creamy and smooth, approximately 2 minutes.
08 - Gradually sift in powdered sugar and cocoa powder while beating on low speed. Increase to medium and beat until fully combined.
09 - Add vanilla extract and salt. Pour in milk one tablespoon at a time, beating until frosting reaches smooth, spreadable consistency.
10 - Place one cooled cake layer on a serving plate. Spread a generous layer of frosting evenly over the top.
11 - Position second cake layer on top. Spread remaining frosting over top and sides of cake. Use an offset spatula to smooth the surface evenly.