In a mixing bowl, beat the softened butter with an electric mixer on medium speed until creamy and light in color, about 2-3 minutes.
Gradually add the powdered sugar, one cup at a time, mixing on low speed until well combined. Scrape down the sides of the bowl as needed.
Once all powdered sugar is incorporated, add the heavy cream (or milk), vanilla extract, and a pinch of salt.
Beat the mixture on medium-high speed for 2-3 minutes until the frosting is fluffy and well combined. If the frosting is too thick, add a little more cream, a tablespoon at a time, until desired consistency is achieved.
Use immediately to frost your cooled cake or cupcakes. If desired, transfer the frosting to piping bags for decorative designs.
If making chocolate frosting, add 1/2 cup of unsweetened cocoa powder to the mixture with the powdered sugar.
Store any leftover frosting in an airtight container in the fridge for up to a week. Re-whip before using.
You can color the frosting with food coloring if desired.