Preheat your oven to 350°F (175°C). Grease and flour two 9-inch round cake pans.
In a large mixing bowl, combine the flour, granulated sugar, baking powder, baking soda, salt, and cocoa powder. Whisk until well blended.
Add the buttermilk, vegetable oil, eggs, and vanilla extract to the dry ingredients. Beat on medium speed for about 2 minutes until smooth.
Carefully stir in the boiling water until fully combined. The batter will be thin, but that’s okay.
Pour the batter evenly into the prepared cake pans. Bake for 30-35 minutes, or until a toothpick inserted in the center comes out clean.
Once baked, allow the cakes to cool in the pans for 10 minutes before transferring them to wire racks to cool completely.
For the frosting, beat the softened butter in a mixing bowl until creamy. Gradually add the cocoa powder and powdered sugar, alternating with the milk, beating until smooth. Stir in the vanilla extract.
Once the cakes are completely cooled, place one layer on a serving plate and spread a layer of frosting on top. Place the second layer on top and frost the top and sides of the cake.
Serve immediately or refrigerate for up to 3 days.