For the cupcakes:
½ cup plus 1 tablespoon Dutch-process cocoa powder
½ cup plus 1 tablespoon hot water
2¼ cups all-purpose flour
¾ teaspoon baking soda
¾ teaspoon baking powder
½ teaspoon salt
2 sticks plus 1 tablespoon unsalted butter, at room temperature
1⅔ cups sugar
3 large eggs, at room temperature
1 tablespoon vanilla extract
¾ cup sour cream
For the caramel filling:
1 cup sugar
1¼ cups heavy cream
¼ teaspoon coarse salt
½ teaspoon pure vanilla extract
½ cup lightly salted peanuts, finely chopped
For the frosting:
1½ cups (3 sticks) unsalted butter, at room temperature
1 cup creamy peanut butter
1 tablespoon vanilla extract
Pinch of coarse salt
3 cups confectioners’ sugar, sifted
7 ounces (about 2 cups) marshmallow fluff
To make the cupcakes, heat oven to 350º. Line cupcake pans with paper liners. Combine the cocoa powder and water in a small bowl and whisk until smooth. Combine the flour, baking soda, baking powder and salt in a medium bowl and whisk to combine.
Combine the butter and sugar in a medium saucepan and place over medium heat. Cook, stirring occasionally, until the butter is completely melted and the mixture is smooth. Transfer to the bowl of an electric mixer and beat on medium-low speed for 4-5 minutes or until the mixture is cool. Beat in the eggs one at a time, mixing well after each addition. Blend in the vanilla and cocoa powder and continue mixing until smooth, scraping down the sides of the bowl as needed.
With the mixer on low speed, blend in the flour mixture in three additions, alternating with the sour cream, beginning and ending with the dry ingredients. Mix each addition until just incorporated, then scrape down the sides and bottom of the bowl. Divide the batter evenly between the prepared liners and bake until a toothpick inserted in the center comes out clean, 18-20 minutes, rotating the pans halfway through baking. Cool in the pans for at least 5 minutes, then transfer to a cooling rack to cool completely before frosting.
While the cupcakes are baking, make the filling. In a large, deep saucepan, spread the sugar in an even layer and place over low to medium low heat. Watch it carefully. Once it starts to liquefy around the edges, use a rubber spatula to very gently stir it towards the center. Continue gently stirring until all of the sugar is melted, but take care not to over stir. Once the caramel reaches a deep amber color, immediately remove it from the heat.
Carefully whisk in half the cream, which will bubble and steam quite violently. Stir until the cream is thoroughly combined, then whisk in remaining cream. Stir in the salt and vanilla. If any sugar has hardened, place the saucepan over low heat and whisk until smooth.
Transfer ½ cup of the caramel to a piping bag or squeeze bottle, then mix in the peanuts to the remaining 1 cup. Set aside.
While the cupcakes are cooling, make the frosting. Combine the butter and peanut butter in the bowl of an electric mixer fitted with the whisk attachment. Beat on medium-high speed until smooth, about 45 seconds. Reduce speed and slowly add the confectioners’ sugar to the bowl and mix in, gradually increasing the speed. Add the vanilla extract and salt, and continue beating on high speed until very fluffy, about 4-5 minutes, scraping down the sides and bottom of the bowl as needed.
Use a spatula to fold in about ½ cup of the marshmallow fluff, then fold in the rest. Transfer to a piping bag.
Once the cupcakes are cool, remove the center. My favorite way to do this is what I learned working at a cupcake shop. Simply poke the center with your (clean!) thumb or index finger. Spoon or pipe the caramel filling into the center of each cupcake. You will likely have leftover caramel, but it can be refrigerated for a couple weeks and makes a great topping for ice cream.
Frost the cupcakes, then drizzle with extra caramel. Top with chopped peanuts, if desired.