2 pounds Russet potatoes, peeled and diced into 1-inch cubes
4 cups chicken or vegetable broth
1 cup heavy cream or whole milk
1 teaspoon salt
1/2 teaspoon black pepper
1/2 teaspoon dried thyme
Fresh parsley for garnish
Croutons for serving (optional)
Instructions
Heat butter and olive oil in a large pot over medium heat until butter melts and foams, about 1-2 minutes.
Add minced garlic and diced onion, sauté for 3-5 minutes until fragrant and translucent, stirring frequently to prevent burning.
Stir in diced potatoes, coating them well with the garlic and onion mixture.
Pour in broth, ensuring potatoes are covered. Add salt, pepper, and dried thyme.
Bring to a boil, then reduce heat to medium-low and simmer uncovered for 20-25 minutes until potatoes are fork-tender.
Remove from heat and use an immersion blender to puree until smooth. If using a regular blender, work in batches, filling only halfway and removing center cap.
Return soup to pot and stir in heavy cream over low heat. Warm gently for 2-3 minutes without boiling to prevent separation.
Taste and adjust seasoning. Ladle into bowls and garnish with fresh parsley and croutons if desired.
Notes
Use Russet potatoes for the creamiest texture due to their high starch content.
For dairy-free version, substitute butter with olive oil and use coconut cream instead of heavy cream.
Soup thickens as it sits. Add broth or milk when reheating to reach desired consistency.
For extra garlic flavor, roast a few garlic cloves and add before blending.