Set a dutch oven or soup pot over medium-high heat.
Add diced bacon, if using, and cook to a desired crispness. Remove bacon from the pot and set aside.
Add butter and olive oil to the pot and set over Medium-High heat.
Stir in chopped onions and carrots; cook for 5 minutes, stirring frequently.
Stir in minced garlic, chili powder, salt, and pepper.
Add thyme sprigs and vegetable broth; stir, set heat to High and bring to a boil.
Lower heat to Medium and cover the pot; cook for 20 minutes, or until carrots are very soft.
Uncover, remove thyme sprigs, and, using an immersion blender, puree the soup for several minutes, or until completely blended and smooth.
Stir in heavy cream or Half & Half, if using.
Taste for seasonings and adjust accordingly.
Ladle soup into bowls and top with prepared bacon.
Garnish with fresh thyme and serve.