Preheat the oven to 350 degrees F.
Line 2 (12-cup) muffin pans with cupcake papers.
In a medium mixing bowl, sift together the flour, sugar, baking soda, salt, and cocoa powder. In a large bowl gently beat together the oil, buttermilk, eggs, food coloring, vinegar, and vanilla with an electric mixer. Add the sifted dry ingredients to the wet and mix until smooth and thoroughly combined.
Divide the batter evenly among the cupcake tins (about 2/3 full). Bake in oven for about 20 to 22 minutes, turning the pans once, half way through. Test the cupcakes with a toothpick for doneness, making sure that the center is not wet. Remove from oven and cool completely before frosting.
For the cream cheese frosting, beat butter and cream cheese until smooth and creamy. Beat in vanilla. Add confectioner’s sugar and beat on medium until combined, then on high speed until frosting is smooth. Spread on cooled cupcakes, or use a pastry bag with a Wilton Star Tip (1M).
To make the yogurt frosting (instead of the cream cheese frosting), beat the cream cheese, butter and vanilla together until smooth. Add the sugar and on low speed, beat until incorporated. Increase the speed to high and mix until very light and fluffy.
Enjoy!