In a large pot, sauté the chopped onion and minced garlic until soft and fragrant.
Add the cubed potatoes and chicken broth to the pot. Bring to a boil, then reduce heat and simmer until the potatoes are tender, about 15-20 minutes.
Use a potato masher to gently mash some of the potatoes in the pot, leaving some chunks for texture.
Stir in the heavy cream and shredded cheddar cheese. Cook over low heat until the cheese is fully melted and the soup is creamy.
Season with salt and pepper to taste.
Serve hot, topped with sour cream, chopped green onions, and crumbled bacon if desired.