Position rack in center of oven and preheat oven to 350°F. Line two 12-cupcake pans with paper cupcake liners.
In the microwave safe bowl, add butter and chocolate. Microwave in 20 second increments, stirring each time, until melted and smooth. Set aside to cool slightly.
Using a stand mixer, blend eggs, sugar, vanilla, and sour cream on medium speed until creamy.
In a medium bowl, sift cocoa powder, flour, baking soda, baking powder, and salt together until combined. Set aside.
Add melted chocolate to the wet ingredients and whisk briefly to blend. Next add dry ingredients, about 1/4 cup at a time and mix on low to blend. Don't over mix, batter will be thick.
Fill cupcake liners 2/3 of the way full with batter. Bake for 15-18 minutes. Cool completely on a wire rack.
Cream butter using a paddle attachment with a stand mixer until smooth and fluffy. Gradually beat in confectioners sugar until incorporated. Beat in vanilla extract.
To make a chocolate buttercream, add 2/3 cup of cocoa powder and mix well. Add an extra tsp of milk to thin, if needed.
Ice cupcakes with a spatula or for a more polished look, use a decorator tip with an icing bag and pipe large swirls on top. Add sprinkles or sugar crystals to finish.
Refrigerate to set/store.