In a large saucepan, melt the butter in the olive oil. Add the onion and garlic, season with salt and pepper and cook over moderately low heat, stirring frequently, until softened, 7 to 8 minutes. Add the zucchini and cook, stirring frequently, until softened, about 10 minutes. Add the stock and 1 1/2 cups of water and bring to a simmer; cook until the zucchini is very soft, about 10 minutes.
Working in 2 batches, puree the soup in a blender until it's silky-smooth. Return the soup to the saucepan and season with salt and pepper. Serve it either hot or chilled, garnished with julienned zucchini.
The soup can be refrigerated overnight.