Preheat oven to 350° F. Grease and flour a 9 x 13-inch baking pan or line with parchment paper. Set aside.
In a large mixing bowl, whisk together flour, sugar, cocoa powder, baking soda, baking powder and salt. Add the eggs, oil and buttermilk; whisk well to combine. Add the hot water and whisk until the batter is smooth.
Transfer the batter to the prepared baking pan. Tap gently on the counter to release air bubbles.
Bake for 30-35 minutes, or until a toothpick inserted in the center comes out clean. Cool completely before frosting.
MAKE THE ICING:
Melt the butter in a saucepan over medium-low heat. Whisk in the cocoa powder, cook over low heat for 2 minutes (do not let it boil). Remove from the heat. Add the powdered sugar and buttermilk, whisking until smooth. Add the vanilla; whisk to combine. The icing should be a thick, spreadable consistency, so if you need to thin the icing, add extra buttermilk, one tablespoon at a time.
Spread the icing on the cool cake. Let the icing cool and set before slicing and serving.
Notes
While most cakes do best with cake flour, I recommend all-purpose flour for this recipe. That's because the chocolate cake includes cocoa powder – which already has a soft, dry texture. The combination of both cake flour and cocoa powder can result in a flimsy cake. All-purpose flour has a higher protein content and is milled to a slightly coarser consistency, which keeps this cake nice and sturdy.
Use thick, full-fat buttermilk. This adds richness, moisture and flavor to the cake that you won't get with low-fat varieties.
Make sure that all of your ingredients are at room temperature. This helps them blend together more easily and smoothly, and helps to avoid over-mixing (which can result in a dry, dense cake).
Sift the confectioners' sugar to avoid any lumps in your frosting.
Do not over-bake the cake or it can become dry. Start checking for doneness by the 30-minute mark, since total baking times will vary depending on your personal oven and the pans that you use.
Make the cake about 1 day ahead of when you plan to serve it. The cake just gets better as it sits!