In a large pot over medium-high heat, heat the olive oil until shimmering, then add the onions. Cook the onions until they are starting to soften and become translucent, 3-5 mins, then add the zucchini, garlic, salt, and pepper. Cook for 5-7 mins until the zucchini is starting to become tender, then add the water.
Bring to a boil over high heat, then turn down to a simmer, cover, and cook for 10-15 mins until the zucchini is tender.
Carefully transfer the soup to a blender and add the fresh basil leaves. Blend until completely smooth and cover to keep warm.
Make the olive oil fried bread (optional): Coat the bottom of a large skillet with a thin layer of olive oil over medium heat. Once the oil is shimmering, place the bread in the pan, press lightly to coat, then flip immediately and cook until deeply golden brown, 1 to 2 mins. Flip the bread and cook until deeply golden brown on the other side, 1 to 2 mins more. Slice the bread in half down the middle.
Ladle the soup into bowls and top with a drizzle of high quality olive oil and a generous amount of freshly grated parmesan. Serve with olive oil fried bread on the side, if you like, and enjoy!
