In a large pot, heat the olive oil over medium heat.
Add the chopped onion and minced garlic. Sauté until the onion becomes translucent.
Add the sliced courgettes to the pot and cook for a few minutes until they start to soften.
Pour in the vegetable or chicken stock, dried oregano, and dried thyme. Bring the mixture to a simmer and let it cook until the courgettes are tender.
Using an immersion blender, blend the soup until smooth. Alternatively, transfer the soup to a blender in batches and blend until smooth.
Stir in the single cream (if using) and freshly grated Parmesan. Continue to stir until the cheese is melted and the soup is well combined.
Season the soup with salt and black pepper to taste. Adjust the seasoning as needed.
Serve the soup hot, garnished with extra Parmesan on top.