In a large mixing bowl, sift together the flour, baking powder, baking soda, cocoa powder, sugar, and salt.
Add the eggs, milk, oil, and vanilla extract to the dry ingredients. Mix on medium speed until well combined.
Reduce the mixer speed to low and carefully add the boiling water to the batter. Mix until the batter is smooth and well combined. The batter will be thin.
Bake the Cake:
Divide the batter evenly between the prepared pans.
Bake in the preheated oven for 30-35 minutes, or until a toothpick inserted into the center of the cakes comes out clean.
Remove the cakes from the oven and allow them to cool in the pans for about 10 minutes. Then, remove the cakes from the pans and transfer them to a wire rack to cool completely.
Prepare the Frosting:
In a large mixing bowl, beat the softened butter on medium speed until creamy.
Gradually add the powdered sugar, cocoa powder, and salt. Mix on low speed until combined.
Add the vanilla extract and heavy cream. Beat on high speed for about 3 minutes, until the frosting is light and fluffy. Add more heavy cream if needed to reach the desired consistency.
Assemble the Cake:
Place one cake layer on a serving plate or cake stand. Spread a generous amount of frosting on top.
Place the second cake layer on top and spread the remaining frosting over the top and sides of the cake.
Serve and Enjoy:
Slice and serve the moist chocolate cake. Store any leftovers in an airtight container at room temperature for up to 3 days, or in the refrigerator for up to a week.
Enjoy your moist and delicious chocolate cake!