Preheat the oven to 350 degrees F. Grease two 8-inch round cake pans and line the bottoms with parchment paper.
Whisk the all-purpose flour, baking powder, baking soda, and fine salt in a large bowl. In another bowl, whisk the granulated sugar, yogurt, whole milk, neutral oil, vinegar, and vanilla until smooth.
Pour the wet mixture into the dry ingredients and fold just until the batter is smooth. Divide the batter evenly between the prepared pans.
Bake for 27 to 32 minutes, until the cakes spring back when gently pressed in the center. Cool in the pans for 15 minutes, then transfer to a cooling rack and cool completely.
Beat the softened butter for 3 minutes until pale and creamy. Gradually beat in the powdered sugar, followed by the heavy cream, vanilla extract, and fine salt, until fluffy.
Place one cooled cake layer on a serving plate and spread buttercream over the top. Add the second layer, then cover the top and sides with the remaining buttercream.
Finish the cake with rainbow sprinkles. Let it stand for 20 minutes before portioning so the buttercream can settle.