Start by gathering all your ingredients and preheating the oven to 350°F. I always zest my oranges first so I don’t forget. Softening butter and cream cheese at room temperature makes mixing so much easier.
In a large bowl, whisk together the flour, baking powder, and salt. I like to sift the flour first; it keeps the cake airy. This step ensures your leavening is evenly distributed.
Use an electric mixer to cream the butter and sugar until light and fluffy. I usually let it go for 3-4 minutes—it really makes a difference in texture. Add eggs one at a time for a smooth mixture.
Mix in vanilla, orange zest, and orange juice. Then alternate adding the dry ingredients with buttermilk. I do this slowly to avoid overmixing, which can make the cake dense.
Divide the batter between two prepared pans and bake for 35-40 minutes. I always check with a toothpick in the center—it should come out clean. Let the cakes cool completely on a wire rack before frosting.
Beat cream cheese and butter until creamy, then gradually add powdered sugar. Pour in heavy cream and a little orange juice for extra flavor. I like to whip it until it’s light and fluffy—it spreads beautifully.
Place one cake layer on a serving plate, spread frosting, add the second layer, and frost the top and sides. I usually add a sprinkle of orange zest or thin slices on top for a pop of color. Chill slightly before slicing.