In a large pot, cover potatoes with cold water, add salt, and bring to a boil. Cook until potatoes are tender, then drain potatoes.
Add butter and mash potatoes with a potato masher or in a mixer. Add milk until mashed potato consistency is reached. Mix in cream cheese and sour cream until cream cheese is all melted. For ease, you can do this with a stand-mixer. Add salt and pepper, adjusting to taste. If potatoes are too thick, add 1 Tbsp. of milk or sour cream at a time.
Transfer potatoes to a 2 quart casserole dish and spread into an even layer. Top with shredded cheddar cheese. Bake in a preheated oven at 350°F for 25-30 minutes or until cheese is bubbly, melted and potatoes are thoroughly heated to 165°F.
Notes
If potatoes are too thick, add 1 Tbsp. of milk or sour cream at a time. Cover with foil if cheese is browning too quickly. Garnish with green onions or bacon bits if desired.