In a medium bowl, whisk together flour, baking powder and salt. Set flour mixture aside.
In a large mixing bowl using an electric hand mixer (or stand mixer), beat butter and sugar on medium-high speed for 5-7 minutes until thick and fluffy, scraping down the bowl as needed.
Add 4 eggs, one at a time, beating well with each addition. Add vanilla extract and beat to combine.
Reduce mixer to medium speed and add the flour mixture in thirds alternating with the 1 cup of room temperature buttermilk, allowing the flour and buttermilk to incorporate with each addition. Scrape down the bowl as needed and beat until just combined and smooth
Preheat oven to 350˚F. Butter and flour two 9" cake pans, tapping out excess flour.
Divide batter evenly between 2 prepared cake pans and spread out the batter into the pans smoothing out the tops with a spatula. Bake for 25-30 minutes until toothpick comes out clean. Rest in pans for 10 minutes then turn out onto a wire rack to cool completely before applying frosting.
While cakes are cooling, In the bowl of a stand mixer fitted with the whisk attachment (or handheld electric mixer), beat butter on high speed for 3-5 minutes or until lightened in color and whipped, scraping down the bowl as needed.
Then sift 4 1/2 cups of powdered sugar. Reduce mixer to medium-low speed and add powdered sugar one Tablespoon at a time, letting it incorporate with each addition. Add powdered sugar to taste and beat until it is fully incorporated, scraping the sides of the bowl as needed.
Add salt, then Vanilla Extract, beating until incorporated.
Add 3 Tbsp heavy cream or milk, 1 Tbsp at a time, and adding it to the desired consistency. Beat another minute until whipped and well combined.
ENJOY!