Heat oil in a large pot over medium high heat. Add bacon and cook until golden. Remove from pot, cool then chop.
Add onion and garlic into the bacon drippings. Cook for 2 minutes until onion is translucent but not browned.
Add carrots and stir well to coat the carrot in the oil.
Add broth, then stir. Cover with lid, adjust heat so it is simmering energetically. Cook for 20 - 25 minutes until carrot is very soft.
Remove lid, turn heat off. Use a stick blender to puree the carrot (or cool slightly and do in blender).
Add cream, milk, salt and pepper to taste. Stir. Adjust thickness with milk (or water), if desired.
Ladle soup into bowls. Garnish with swirls of cream, bacon and parsley or thyme if desired. Serve with crusty bread.
