Heat oil in a medium pot over medium heat. Cook onion until translucent but not browned, about 7 minutes. Add carrots and cook until slightly softened, 3 to 4 minutes.
Stir in broth, chickpeas, squashes, corn, salt, and pepper and bring to a boil. Reduce heat and simmer 2 minutes, then stir in tomatoes and asparagus and cook until squashes are tender but not mushy, about 3 minutes more. Ladle into bowls and garnish with basil.