In a large dutch oven, cook the bacon over medium high until crispy. Remove and set aside.
Add ¼ cup butter and melt.
Add the onion, carrots, and garlic. Cook for a few minutes until onions become translucent.
Stir in the flour.
Slowly add the chicken stock while using a whisk to stir.
Add in the potatoes.
Bring the soup to a boil. Reduce the heat, cook covered for about 15-20 minutes or until potatoes are tender.
Ladle some hot soup out of the pot into a small bowl. Stir in the shredded cheese, mixing until smooth. Return the mixture to the soup.
Stir in the heavy cream.
Add salt and pepper to taste.