Preheat oven to 350°F (170°C). Line standard muffin tins with paper liners.
For the Dark Chocolate Espresso Cupcakes, in a medium saucepan over medium-high heat, melt the butter. Whisk in the coffee and espresso powder. Gradually add the cocoa powder, whisking to combine. Continue to heat until thickened, bringing the mixture to a simmer but not a full boil. Remove from heat and allow the cocoa mixture to cool for 10-15 minutes.
In a medium-sized bowl, whisk together flour, granulated sugar, baking soda and salt and set aside.
In a stand mixer fitted with the whisk attachment, combine the eggs and buttermilk. Add the vanilla. Once the cocoa mixture has cooled (it should only be slightly warm to the touch), slowly add a little bit to the egg mixture, mixing constantly. Add the remaining cocoa mixture and mix to combine.
Add the flour mixture one third at a time in 3 stages, mixing well to combine.
Fill the cupcake liners about two-thirds full with batter and bake for 17-19 minutes, until a toothpick inserted in the center of a cupcake comes out clean. Allow the cupcakes to cool in the pans on wire racks for 10 minutes, remove cupcakes from pans and cool completely on wire racks.
To make the caramel sauce for the Salted Caramel Buttercream, stir together granulated sugar and water in a medium saucepan. Bring to a boil over medium heat. Cook without stirring until the mixture turns a deep amber color and starts to smoke. Remove from heat and add cream and vanilla. (Carefully! The mixture will bubble and spit.) Stir until smooth and sugar is dissolved. (The sugar never completely dissolves for me and I have molten and re-hardened sugar clinging to my spoon but I just use the liquid part of the caramel for the buttercream and it turns out beautifully.) Allow the caramel cool for about 20 minutes, until barely warm to the touch.
In a stand mixer fitted with the paddle attachment, beat butter and salt together on high speed until light in color and fluffy. Add powdered sugar and mix on low speed until thoroughly combined. Add the (cooled!) caramel and beat on medium-high speed until light and airy and completely combined (about 1-2 minutes).
To assemble, make the caramel sauce for the drizzle (if desired), following the directions in step 7 above. Place Salted Caramel Buttercream into a pastry bag fitted with a large star tip (I use a Wilton 1M) and pipe frosting onto cupcakes. To finish, drizzle with caramel sauce just before serving, if desired. Store frosted cupcakes in an airtight container in the refrigerator for up to three days. Unfrosted cupcakes may be kept at room temperature for 2-3 days, or frozen for up to one month. Salted Caramel Buttercream can be made ahead and kept in a sealed container in the refrigerator for up to one week. Allow chilled buttercream to soften at room temperature for 1-2 hours until it has a pipe-able consistency.