Preheat oven to 350℉. Generously grease a 9x13 or 13x18 inch baking pan and set aside.
In a large bowl, add room temperature butter and granulated sugar. Using a hand mixer, beat until creamed and fluffy, about a minute. Add vanilla and eggs, one at a time, mixing until incorporated and smooth.
In a separate bowl, sift together dry ingredients: cake flour, baking powder, and salt. Add half of the dry ingredients to butter mixture. Mix until just combined. Add half of milk, again mixing until just combined. Repeat once more to add remaining dry ingredients and milk.
Pour batter into prepared baking pan and spread into an even layer.
9x13 baking pan: 32-38 minutes13x18 half sheet pan: 18-20 minutesBake your cake using the times listed above as an estimate, or until cake is baked through in the center. If your cake jiggles in the middle, it needs more time. If cake is not jiggly, gently press into the center with a finger. If an indent is left, your cake is not done. If cake springs back, it's done. If you have an instant read thermometer, cake is done at 210℉. Ovens can run hot, so I suggest using visual cues and not relying on time alone.
Remove cake from oven and allow to cool completely in the pan on a wire cooling rack.
In a large bowl, add room temperature butter and use a hand mixer to beat until creamy. Add confectioner's sugar and slowly mix until ingredients are fully combined. Then, whip at high speed for 2-3 minutes, or until light and fluffy.
Add heavy cream, vanilla extract, and salt. Whip for an additional 2-3 minutes, or until light and fluffy. Add additional heavy cream as needed to reach desired consistency.
Spread frosting in an even layer onto cooled cake. Optionally, add sprinkles before frosting crusts.
Slice and serve.
