In a large, heavy-bottomed pot (preferably a cast iron dutch oven), melt butter over medium-high heat.
Add onion and cook until soft, about 5 minutes.
Add garlic and cook, stirring frequently, until fragrant (about 30 seconds).
Sprinkle the contents of the pot with the flour and stir until smooth, about 1 minute.
Add chicken stock, potatoes, and carrots, and bring to a boil, scraping the bottom of the pan.
Add remaining ingredients, return to boil and cook for 5 minutes, stirring occasionally.
Reduce heat and simmer 30 minutes.