Heat the olive oil and butter in a large Dutch oven or soup pot over medium-high heat.
Add the sliced mushrooms in an even layer. Cook without stirring for 2 to 3 minutes, then continue cooking for 6 to 8 minutes, stirring occasionally, until the mushrooms are browned and their moisture has mostly evaporated.
Reserve about ½ cup of browned mushrooms for serving, if desired.
Reduce the heat to medium. Add the diced onion and cook for 4 to 5 minutes, until soft and translucent.
Add the garlic, dried thyme, salt, and black pepper. Stir for 30 seconds, until fragrant.
If using flour, sprinkle it over the mushroom mixture and stir for 1 minute.
Pour in the vegetable broth or chicken broth. Stir in the soy sauce or tamari if using, scraping any browned bits from the bottom of the pot.
Bring the soup to a gentle boil, then reduce the heat and simmer for 10 minutes.
While the soup simmers, blend the cottage cheese until smooth in a blender, food processor, or with an immersion blender.
Turn the heat to low. Blend about half of the soup with an immersion blender, leaving some mushrooms whole for texture. For a smoother soup, blend more of the mixture.
Stir in the blended cottage cheese and Parmesan cheese. Heat gently for 2 to 3 minutes, stirring often, until warm and creamy. Do not boil vigorously.
Add milk or extra broth if you prefer a thinner soup. Taste and adjust the salt and black pepper.
Serve warm with reserved sautéed mushrooms, fresh thyme, parsley, chives, croutons, or extra Parmesan.