In a large pot, heat the olive oil over medium heat. Add the onion and sauté until tender, about 5 minutes. Add the garlic and cook for an additional minute.
Add the zucchini, broth, salt, pepper, and thyme; bring to a boil. Turn the heat down to low, cover, and simmer for 15 to 20 minutes, or until the zucchini is tender.
Stir in the beans and lemon juice. Use an immersion blender to blend the soup until smooth. Taste and add additional salt, pepper, or lemon juice, if necessary. For a creamier soup, stir in the heavy cream (or Greek yogurt, sour cream, or coconut milk). See note.
Ladle the soup into bowls and garnish with fresh herbs, parmesan cheese, and croutons, if desired. Serve immediately.
