En vista del desempeño deficiente de este mando, fue destituido y en su lugar se designó a Zaragoza, quien dejó el Ministerio de Guerra y se dirigió a Puebla para organizar la oposición al avance francés con cerca de 10,000 hombres; cantidad mínima si se toma en cuenta el vasto territorio que debía cubrirse.
[7] Los representantes español (Prim) e inglés (Charles Wyke) negociaron con el gobierno juarista por separado y en última instancia aceptaron las propuestas de moratoria del gobierno mexicano, y reembarcaron a sus tropas.
A los militares franceses los rodeaba un aura de invencibilidad en combate dado que no habían sido derrotados desde Waterloo, casi 50 años antes, con sonadas victorias en las batallas de Solferino, Magenta y Sebastopol.
Con una economía destruida por casi 50 años de guerras civiles, con un Estado débil y una población dividida por las pugnas entre facciones, la conquista del país parecía una empresa factible con un contingente reducido.
En los días anteriores a la batalla, Zaragoza solicitó una y otra vez al alto mando en Ciudad de México, el envío urgente de recursos económicos, ya que no podía costear ni siquiera los alimentos para las tropas.
En la llamada Batalla de Las Cumbres murieron 500 franceses, mientras las bajas mexicanas ascendieron solamente a 50.
Pese a este saldo favorable, Zaragoza aún tenía desconfianza sobre el desempeño real de sus tropas en un combate en campo abierto.
Aunque sus fuerzas habían disminuido, los mexicanos se prepararon para la defensa de Puebla.
El ala derecha mexicana la cubrían las tropas de Oaxaca dirigidas por Porfirio Díaz.
La artillería sobrante la colocaron en los fortines y reductos dentro de Puebla, quedando al mando del general Santiago Tapia.
En ese momento se dio una maniobra sorpresiva: la columna francesa, que venía avanzando en orden de oriente a poniente, se dividió en dos: la primera, compuesta por aproximadamente 4000 hombres y protegida con su artillería, dio un violento viraje hacia la derecha y se dirigió hacia los fuertes; mientras que la segunda columna, compuesta por el resto de la infantería, quedó como reserva.
Los conservadores Almonte y Antonio de Haro y Tamariz, que acompañaban a los franceses, habían sugerido que el ataque se dirigiera a las inmediaciones del ex Convento del Carmen, en el sur de la ciudad, tomando como antecedente lo que sucedió en el sitio durante la Guerra con Estados Unidos.
Zaragoza advirtió la maniobra y rápidamente replanteó su plan de batalla, movilizando las tropas hacia las faldas del cerro.
Los franceses continuaron su avance, colocando sus baterías frente a Guadalupe, al tiempo que devolvían el fuego mexicano proveniente de esa posición.
En Loreto había un cañón de 68 libras que causaba enormes estragos en las filas francesas.
Un zuavo apareció frente a él y tras este el resto del cuerpo que, una vez apoderados de ese fortín, levantarían la moral francesa y podría perderse la victoria conseguida.
Luego de que este asalto fue rechazado, los franceses retrocedieron siendo perseguidos por el Batallón Reforma.
En aquel momento, luego de ser repelidos por última vez, los efectivos franceses empezaron a huir, completamente dispersados.
A las 4:15 de la tarde finalmente se recibieron noticias: Zaragoza envió más tarde otro telegrama en el que dijo que los franceses habían iniciado la retirada hacia Amozoc, pero sin mencionar el resultado final de la batalla.
Además, no temió tomar decisiones arriesgadas, como prescindir de los 2000 efectivos que O'Horan se llevó para batir a Leonardo Márquez, y en el curso de la batalla actuó con serenidad y efectividad.
Se le considera héroe nacional y en su honor, tiempo después, Juárez renombró a la ciudad como Heroica Puebla de Zaragoza.
En todo caso, ensoberbecido por la superioridad per se de los franceses, no contó con la férrea resistencia mexicana y cometió yerros garrafales: así, por ejemplo, fue famosa su orden de colocar sus cañones en batería a dos kilómetros y medio de las fortificaciones poblanas, lo cual fue calificado por el propio Napoleón III como un disparate[14] ya que las balas llegaban a sus blancos, pero sin fuerza.
Cuando en Francia se supo la derrota del ejército francés, originó dolor, histeria y llanto, más aún cuando llegaron las historias de que los indígenas zacapoaxtlas (que en realidad se trataba del sexto Batallón de Guardia Nacional del Estado de Puebla[15]) habían atacado con machetes, arma desconocida en Europa, y se comían los cadáveres.
El caso más célebre es el del general conservador Miguel Negrete, quien abandonó al partido conservador y se puso a disposición de Zaragoza con la siguiente frase: "Yo tengo patria antes que partido."
El 5 de mayo es una fecha entrañable para los mexicanos; se celebra en las principales ciudades del país con desfiles y verbenas.