Preheat the oven to 350 degrees F. Grease a 9x13 inch baking pan or use an ungreased 9x13 inch disposable foil pan.
Mix together the flour, baking powder and salt and set aside.
In the bowl of a stand mixer, beat the butter on medium high speed until light and creamy. Gradually add the sugar, scraping the sides of the bowl once or twice and beating for about 3 minutes or until light and creamy. Beat in the vanilla.
Reduce mixer speed to low and add eggs one at a time, increasing mixer speed after each egg and beating for 30 seconds. When all the eggs are added, increase speed and beat on high for about a minute.
Reduce speed to low and add the milk, then with mixer on the very lowest speed add flour and sour cream alternately.
When flour is fully incorporated, pour mixture into the pan and spread evenly.
Bake on center rack for about 35 minutes or until cake springs back when touched.
Caramel Frosting:
Mix the softened butter, salt and both brown sugars together in a heavy saucepan.
Place the saucepan over medium heat and bring to a boil, stirring often. When mixture reaches a good boil, carefully pour in the milk (it will bubble up!) and allow the mixture to return to a boil. Remove the pan from the heat and add confectioners’ sugar and the vanilla. Beat with a wooden spoon until smooth, then pour over the came before it starts to set. The frosting should start to set almost immediately after it is poured over the cake.