01 - Preheat oven to 350°F. Grease and flour two 9-inch round cake pans, tapping out any excess flour.
02 - In a large mixing bowl, sift together the all-purpose flour, unsweetened cocoa powder, granulated sugar, baking powder, baking soda, and salt until evenly distributed.
03 - Add the room-temperature eggs, whole milk, vegetable oil, and vanilla extract to the dry mixture. Beat on medium speed for 2 minutes until the batter is smooth and free of lumps.
04 - Gradually pour in the boiling water while mixing on low speed. Continue until fully combined. The batter will appear thin — this is expected.
05 - Evenly divide the batter between the two prepared cake pans, smoothing the tops with a spatula.
06 - Bake on the center rack for 30 to 35 minutes, or until a toothpick inserted into the center of each layer comes out clean.
07 - Allow the cakes to cool in the pans for 10 minutes, then carefully invert onto wire racks to cool completely before frosting.
08 - Beat the softened unsalted butter in a medium bowl until light and creamy. Sift in the powdered sugar and unsweetened cocoa powder. Add the milk and vanilla extract, then beat on medium-high speed until the frosting is fluffy and spreadable.
09 - Place one cake layer on a serving plate. Spread a generous layer of frosting over the top. Place the second layer on top and frost the top and sides evenly using an offset spatula.