Preheat oven to 350℉. Line a cupcake pan with baking cups.
In a medium bowl, whisk together cake flour, baking powder, baking soda and salt. Set aside.
In a large mixing bowl, cream together the butter and sugar until light and fluffy. Add the eggs one at a time, beating well after each addition. Beat in the vanilla extract, sour cream and vegetable oil.
Gradually add in the flour mixture in three parts, alternating with milk (So it goes flour, milk, flour, milk, flour). Mix until batter is uniform and smooth. Stir in sprinkles.
Fill baking cups about 2/3 full and bake for 15 minutes, or until a toothpick inserted into the center comes out clean. Remove from the oven, transfer cupcakes to a cooling rack, and allow them to cool to room temperature before frosting.
Frosting
In a large mixing bowl, whip the butter (with a stand mixer or electric hand mixer) until fluffy, about 5 minutes. With the mixer on low speed, gradually add in the powdered sugar until completely incorporated.
With the mixer on medium speed, add the vanilla and salt, and beat for a minute, until fluffy. Add milk until desired consistency is reached.
Transfer to a frosting bag with tip and frost. Garnish with sprinkles.
Notes
Dye-free rainbow sprinkles work best. Do not over-mix them into the batter. This can cause them to bleed their colors.Store in an airtight container at room temperature for 2 days or in the refrigerator for 4 days.Full-fat sour cream and whole milk will yield the best texture and taste. Make sure they are room temperature to create a silky smooth batter.