Place shrimp in a medium saucepan. Pour in enough cold water to cover by 1 inch and add a pinch of salt. Bring to a simmer over medium heat and cook, uncovered, until shrimp are pink and curled, about 7 minutes. Drain and pat dry with paper towels. Transfer to a bowl, cover and refrigerate until ready to serve soup.
Warm 2 Tbsp. oil in a large pot over medium heat. Add onion and cook, stirring occasionally, until softened, 6 to 8 minutes. Add remaining 1 Tbsp. oil, garlic, chili powder and cumin and cook, stirring, until fragrant, about 1 minute. Raise heat to medium-high. Stir in corn and sauté until tender, about 3 minutes. Cool slightly.
Transfer half of corn mixture to a food processor or blender. Add 1 cup buttermilk and puree until smooth, at least 2 minutes, stopping and scraping down sides occasionally. Transfer to a large bowl and stir in remaining half of corn mixture and remaining buttermilk. Season well with salt and pepper. Cover and refrigerate until thoroughly chilled, at least 2 hours.
Serve in chilled bowls, garnished with shrimp.