Preheat your oven to 350°F (175°C). Grease and flour two 9-inch round cake pans.
In a large mixing bowl, cream together the softened butter and granulated sugar until light and fluffy.
Add the eggs one at a time, mixing well after each addition. Stir in the vanilla extract.
In a separate bowl, whisk together the flour, baking powder, and salt. Gradually add this dry mixture to the wet ingredients, alternating with the milk. Mix until just combined.
Divide the batter evenly between the prepared cake pans. Bake in the preheated oven for 25-30 minutes, or until a toothpick inserted into the center comes out clean.
Allow the cakes to cool in the pans for 10 minutes, then transfer to wire racks to cool completely.
Once cooled, place one cake layer on a serving plate. Drizzle half of the caramel sauce over the top.
In a mixing bowl, whip the heavy cream with powdered sugar and vanilla extract until soft peaks form. Spread half of the whipped cream over the caramel layer.
Place the second cake layer on top, drizzle with the remaining caramel sauce, and top with the remaining whipped cream.
Chill the cake in the refrigerator for at least 30 minutes before serving to allow the flavors to meld.