In a Dutch oven, cook the bacon over medium heat until done. Remove bacon from pan, and set aside.
In the bacon grease remaining in the pan, saute the onion, celery and carrots until vegetables soften.
Add the garlic, and continue cooking for 1-2 minutes.
Add the potatoes and toss to coat. Cook for 3-4 minutes.
Return the bacon to the pan and add enough chicken stock to cover the potatoes. Cover and simmer until potatoes are tender.
In a separate pan, melt the butter over medium heat. Whisk in the flour. Cook stirring constantly, for 1-2 minutes. Whisk in the milk and tarragon. Bring the cream mixture to a boil; cook, stirring constantly, until thickened.
Stir the cream mixture into the potato mixture. Puree about 1/2 the soup, and return to the pan. Adjust seasonings to taste.