Step 1: Preheat Oven and Prepare Pans : Preheat oven to 350°F (175°C). Grease and flour two 9-inch round cake pans and line the bottoms with parchment paper for easy release.
Step 2: Mix Dry Ingredients : In a medium bowl, whisk together flour, baking powder, baking soda, and salt. Set aside.
Step 3: Cream Butter and Sugar : In a large bowl, beat butter and sugar using an electric mixer on medium speed until light and fluffy (about 3–4 minutes). Add eggs one at a time, beating well after each addition. Mix in vanilla extract.
Step 4: Combine Wet and Dry Ingredients : Gradually add the dry ingredients to the butter mixture, alternating with buttermilk, beginning and ending with dry ingredients. Mix until just combined. Do not overmix.
Step 5: Bake the Cake Layers : Divide batter evenly between the prepared pans. Bake in preheated oven for 25–30 minutes, or until a toothpick inserted in the center comes out clean. Allow cakes to cool in pans for 10 minutes, then transfer to wire racks to cool completely.
Step 6: Prepare the Buttercream Frosting : Beat butter in a large bowl until creamy. Gradually add powdered sugar, 1 cup at a time, beating on low speed. Add vanilla extract, salt, and heavy cream/milk, and beat on high speed until light, fluffy, and spreadable. Adjust consistency by adding more milk or sugar as needed.
Step 7: Assemble the Cake : Level the cooled cake layers with a serrated knife if needed. Place one cake layer on a serving plate or cake board. Spread a thick, even layer of buttercream frosting on top. Place the second cake layer on top and apply a crumb coat (a thin layer of frosting to trap crumbs). Chill for 10–15 minutes. Frost the cake completely with remaining buttercream and smooth with a spatula.
Step 8: Decorate and Serve : Optionally, pipe decorative borders, sprinkles, or fruit on top. Slice and serve at room temperature.