Preheat the oven to 350 degrees. Line a muffin tin with cupcake liners.
Make the cupcakes by combining the flour with the baking powder and salt; mix well.
In a stand mixer or with a hand mixer, beat the sugar and butter until creamy.
Add the eggs one at a time, beating well after each addition. Beat in the vanilla.
Slowly add the flour mixture to the butter mixture alternately with milk, mixing well after each addition.
Pour evenly into the cupcake liners.
Place into the oven and bake 17-20 minutes, or until a tester inserted into the center comes out clean.
Remove from the oven and let them cool for 5 minutes before putting them on a wire cooling rack to cool completely.
Prepare the caramel frosting by heating the butter and brown sugar in a large saucepan over medium heat until boiling. Once it's boiling, stir for 1 minute.
Remove from heat and let cool for 15 minutes.
Add the hot milk and the powdered sugar, then mix until well combined.
Spoon the frosting into a zip-lock bag and cut the corner.
Frost the cupcakes by piping the frosting, starting at the outer rim of the cupcake, until you get to the center. Repeat with the remaining cupcakes.