Chop green onions, pepper, celery, and onion; peel and dice potato; mince garlic.
In a large saucepan, heat olive oil over medium heat. Add the green onions, garlic, onion, bell pepper, and celery. Cook, stirring occasionally until the vegetables start to soften, about 10 minutes. If using ears of corn, this is a good time to remove the kernals; otherwise, be sure that the corn is thawed.
Stir in potatoes along with 2 cups of the corn, the bay leaf, and the broth.
Bring the mixture to a boil. Reduce heat and simmer for 15 minutes, stirring occasionally.
Puree the remaining 2 cups of corn and the milk in a blender or food processor, then stir it into the soup. Simmer the soup until it thickens slightly, 5 to 10 minutes. Remove the bay leaf and add salt and pepper to taste. Top each serving with a dollop of sour cream, if desired.
Serve with grapes.