In a large soup pot melt the butter over medium heat.
Add garlic, onion, carrots, and celery. Stir every few minutes until vegetables are tender. (about 10 minutes)
Add flour to pot and stir constantly for about 1-2 minutes until fully incorporated.
Add the potatoes, chicken broth, salt pepper and bay leaf. Bring to a boil.
Reduce and simmer until potatoes are tender. About 15 minutes.
Remove and discard the bay leaf.
Pour in the milk and stir constantly.
Simmer until soup thickens up a bit and potatoes are fully cooked. About 15 minutes.
Transfer soup to bowls and top with cheese, thyme and bacon.
Store leftovers in a covered container in fridge for 3-4 days.