Cocina el pollo con la mitad de cebolla y 2 dientes de ajo en agua suficiente para cubrir la carne. Toma unos 20-30 minutos.
Mientras se cocina la carne, quita los rabos y las semillas a los chiles. Parte los tomates en cuartos y separa las hojas de los tallos del cilantro. Licúa los chiles, 1/4 de cebolla, el diente de ajo, las hojas de cilantro y 1 taza del caldo de pollo. Sazona con sal y pimienta al gusto.
Retira la carne de caldo de pollo, deshebra y reserva.
Vierte lo licuado en el caldo, agrega el resto de agua y deja que hierva unos 15 minutos. De ser necesario agrega un poco más de sal.
Cuando hayan pasado los 15 minutos, regresa el pollo ya deshebrado a la olla junto con los granos de elote y deja cocinar unos minutos hasta que vuelva hervir.
Apaga el fuego y deja reposar antes de servir.