Bajo las órdenes del general Miguel Negrete participa en el Sitio de Puebla.
Fue hecho prisionero, sin embargo, logró escapar y junto con Negrete armó guerrillas en la sierra poblana.
Posteriormente, combatió a las fuerzas imperialistas en diversos frentes, como los estados de San Luis Potosí, Guanajuato, Coahuila, Chihuahua, Nuevo León y Tamaulipas, ascendiendo a Teniente coronel de infantería.
Dejó la política y regresó a las armas bajo las órdenes del general Mariano Escobedo, participando en el sitio de Querétaro.
Ya para enero de 1873, se le designó cónsul en San Francisco, California y a finales de 1876 regresó a México para desempeñarse como senador por el Distrito Federal.