Preheat your grill to medium-high heat. Remove the husks and silk from the corn, and brush each ear with olive oil.
Place the corn on the grill and cook for about 10-12 minutes, turning occasionally, until the corn kernels are lightly charred and tender. Remove from the grill and let it cool for a few minutes.
Once the corn has cooled, use a sharp knife to cut the kernels off the cobs. Place the corn kernels in a large mixing bowl.
In a separate bowl, whisk together the mayonnaise, sour cream, lime juice, chili powder, smoked paprika, salt, and pepper until well combined.
Pour the dressing over the corn kernels and toss to coat them evenly.
Add the chopped red onion and cilantro to the bowl and gently mix them into the corn.
Sprinkle the crumbled cotija cheese (or feta cheese) over the top of the salad.
Taste and adjust the seasoning if needed, adding more salt, pepper, or lime juice according to your preference.
Serve the elote salad immediately, or refrigerate it for a few hours to let the flavors meld together. It can be enjoyed chilled or at room temperature.