Preheat oven to 350°F. Line a standard muffin pan with cupcake liners.
In a medium bowl, whisk together cake flour, baking powder, baking soda, and salt. Set aside.
In a large mixing bowl, or in a stand mixer, beat the butter, oil, and sugar on medium-high speed for 3–4 minutes, until light, pale, and fluffy.
Add the eggs one at a time, mixing well after each addition.
Mix in the vanilla extract or vanilla bean paste and almond extract, if using. Scrape down the sides of the bowl as needed.
Beat in the sour cream and then beat in the milk, scraping down the bowl in between, until smooth.
Add the dry ingredients and mix on low speed just until combined. Do not overmix.
Fill each liner about ¾ full for taller, bakery-style cupcakes.
Bake: Bake for 18–22 minutes, or until the tops spring back lightly when touched and a toothpick inserted into the center comes out clean or with a few moist crumbs.
Let the cupcakes cool in the pan for 5 minutes, then transfer them to a wire rack and cool completely before frosting.
Frost with your favorite buttercream. For my favorite version, pair these cupcakes with my Marshmallow Buttercream Frosting.