Preheat oven to 350°F. Line two 12-count muffin pans with cupcake liners.
In a large bowl, beat the butter, oil and granulated sugar together until light and fluffy, about 2 minutes.
Beat in the eggs one at a time, then the vanilla, until fully incorporated.
In a separate bowl, whisk together the flour, baking powder and salt.
Alternate adding the dry ingredients and buttermilk to the butter mixture in three additions, mixing just until combined after each.
Divide the batter evenly between the prepared cupcake liners, filling them about 3/4 full.
Bake for 18-20 minutes, until a toothpick inserted in the center comes out clean or with just a few moist crumbs.
Allow cupcakes to cool in pans for 10 minutes, then transfer to a wire rack to cool completely.