Bitwa Aztekowie przygotowując się do obrony, zbudowali barykady na trzech tamach, łączących miasto z lądem stałym. Te właśnie tamy zamierzali zaatakować Hiszpanie. Po wybudowaniu barykad, Aztekowie uczynili w nich wyłomy, w które wtargnęli Hiszpanie. Była to jednak pułapka Azteków, którzy okrążyli przeciwnika. Dzięki tej taktyce, Aztekowie byli blisko zabicia Cortesa, który tylko dzięki odwadze Christobala de Olei uniknął śmierci. Zdarzenie to miało miejsce w dniu 30 czerwca.
Pomimo pogarszającej się sytuacji zaopatrzeniowej, Aztekowie bronili się ofiarnie. Najtrudniejsze były dla Hiszpanów walki uliczne i o każdy budynek. Upadek miasta był jednak już tylko kwestią czasu. Dnia 13 sierpnia 1521 r. Hiszpanie i ich sprzymierzeńcy Tlaxcaltekowie, wdarli się do dzielnicy Tlatelolco, która kilkadziesiąt lat wcześniej była jeszcze samodzielnym miastem. Tutaj znajdował się ostatni punkt oporu Azteków. Po pokonaniu Indian, miasto przez cztery dni plądrowano, a tysiące jego mieszkańców zabito.