Peel and cut potatoes into 1 to 2 inch pieces. Bring a large pot of water to a boil and add the potatoes. Cook for 25-35 minutes or until cooked through. Drain the potatoes.
Pour the drained potatoes into a large mixing bowl and using a paddle attachment, mix the potatoes on low speed until mashed. Add in butter and cream. Mix again until ingredients are incorporated. Scrape sides of bowl. Add in softened cream cheese and sour cream. Stir on low. Season potatoes with salt and pepper to taste. I usually do about 1 tsp of pepper and 2 tsp of salt. Mix until all the ingredients are combined.
Potatoes can be kept in refrigerator for a few days (or freezer for a few months) until they are ready to be heated. When ready to bake pour potatoes into a greased 9x13 inch baking pan and top with pieces of butter. Bake in a 350°F oven for 1 hour.
The recipe can also be doubled and heated in a slow cooker over low for a few hours, stirring occasionally. If you need to feed a huge crowd, quadruple the recipe and heat in a large electric roaster.