Melt the butter and 1 tablespoon olive oil in a medium pot, over medium heat. Add the onions and cook for 2-3 minutes. Add the rest of the olive oil, mushrooms, garlic and thyme and season with salt and pepper. Cook for about 7 minutes or until they are golden brown, stirring often.
Add the flour and continue cooking for 2 minutes more. Add the chicken or vegetable stock and stir.
Reduce the heat to medium-low an continue cooking for 25 minutes, stirring occasionally.Transfer the soup to a blender, or use an immersion blender, and puree the soup until smooth.
Return the soup to the pot and add cream and cheese. Cook for about 5 minutes and season to taste.
Laddle in bowls and add heavy cream and chives for garnish. Serve warm.