Sitio de Tenochtitlan
Durante este tiempo, la capacidad de los mexica de operar se había visto poderosamente reducida debido a la epidemia de peste y a la inestabilidad política de la sucesión, pero el regente Cuauhtémoc se vio capaz de enviar a cuatro expediciones 10.000-20.000 guerreros para tratar de impedir la toma de las ciudades tributarias. Estas fuerzas fueron derrotadas, en muchos casos por los propios aliados indígenas de Cortés, lo que ayudó a recuperar la moral de los españoles y a disipar el terror que los indígenas tenían hacia sus antiguos señores aztecas. Tras asegurar en marzo de 1521 el control de Chalco, Tlamanalco y Huaxtepec, Cortés envió prisioneros a Cuauhtémoc con el mensaje de que los dominios aztecas ahora le pertenecían y que Tenochtitlan estaba acorralada. En abril, reuniéndose con los caciques locales para aglutinar sus fuerzas, Cortés capturó la última ciudad portuaria de Xochimilco, en la que fue derribado del caballo y habría perdido la vida si no fuera por Cristóbal de Olea (no confundir con Cristóbal de Olid), y poco después repelió un asalto de 17.000 aztecas que intentaron recapturar la ciudad. Poco después encontró evacuados y desiertos los señoríos de Coyoacán, Tacuba, Atzcapotzalco y Cuauhitlan.
Andrés de Tapia
En el verano de 1521 se le asignó una misión más comprometida, encargándosele que recuperara la plaza de Cuauhnáhuac (actual Cuernavaca), capturada por los de Malinalco. Ocurrió tras una grave derrota de los españoles en una de sus incursiones a Tlatelolco, que se ha dado en llamar "el desastre del canal" o "la batalla de la Quebrada". Los mexicas consiguieron capturar a más de cincuenta españoles, y matar a una veintena. Cuauhtémoc aprovechó esa victoria parcial para intentar convencer a las gentes de Chalco, Xochimilco o Cuauhnáhuac de su superioridad sobre los españoles. Les envió emisarios con cabezas de españoles y de caballos, y obtuvo resultados, al producirse sublevaciones contra los invasores en algunas de esas zonas. Tal ocurrió en Cuauhnáhuac, que había sido tomada por sus vecinos de Malinalco, por lo que sus habitantes, aliados de los españoles, les pidieron ayuda. Cortés no podía negarse en ese momento a auxiliar a los de Cuauhnáhuac, porque hubiera sido tanto como reconocer ante sus aliados su mala situación, en un momento en el que estaba sufriendo abandonos de sus soldados tlaxcaltecas y texcocanos. Encomendó a Tapia la recuperación de la plaza, asignándole ochenta soldados de a pie y diez de caballería. Tapia obtuvo un gran éxito, en una situación que era crítica para los españoles, expulsando a los de Malinalco de Cuauhnáhuac en diez días.