Peel the potatoes and cut them into evenly sized chunks (about 1-2 inches).
If using garlic, peel and smash the cloves and add them to the pot for flavor.
Place the potatoes (and garlic) in a large pot and cover with cold water. Add a generous pinch of salt.
Bring to a boil over medium-high heat. Reduce the heat to a simmer and cook for 15-20 minutes, or until the potatoes are fork-tender.
Drain the potatoes in a colander and let them sit for a minute or two to allow any excess steam to escape.
Return the potatoes to the pot and mash them using a potato masher or ricer until smooth.
While the potatoes are still warm, add the unsalted butter and let it melt. Pour in the heavy cream (or milk) and mix until everything is well combined and creamy.
Season with salt and pepper to taste. Mix well.