La División fue reforzada con 3500 soldados que llegaron el 2 de diciembre en la corbeta Abtao y la cañonera Magallanes al mando del coronel José Francisco Gana Castro.
Las tropas chilenas establecieron su campamento en el valle de Lurín que ofrecía agua, forrajes y alimentos a las fuerzas expedicionarias.
El mando peruano envió al coronel Pedro José Sevilla y los Cazadores del Rímac, con 200 jinetes armados con carabinas, a vigilar el avance de los chilenos, enfrentándolos en Yerba Buena (Cañete) y luego en Bujama (Mala).
Las tropas chilenas llegarían así a las espaldas de las defensas peruanas que, descolocadas, no opondrían una resistencia eficaz.
El camino no era expedito sino solo huellas en terrenos por los el transporte de cargas pesadas de artillería y bagajes solo podían ser hechas con gran esfuerzo, demora y quizás eran imposibles.
[11]: 145 En el cerro San Cristóbal se construyó una fortaleza llamada "Ciudadela Piérola", encargada al marino Manuel Villavicencio.
[11]: 124 Caballería Más 20 ametralladoras Nordenfelt, Claxton, Gatling En tanto, el Ejército de Chile, al mando del general Manuel Baquedano, desplegó sus cuatro divisiones; a la izquierda la 1.ª División al mando de Patricio Lynch.
Detrás se ubicaría la Reserva, bajo el mando del comandante e ingeniero militar Arístides Martínez.
[2]: 51–52 El plan de Baquedano consistía en embestir con las tres divisiones la línea enemiga y romperla donde estuviera más débil.
La segunda división (Sotomayor) se extravió o demoró en llegar hasta el abra de San Juan.
La 2.ª División bajo el mando de Sotomayor no alcanzó a intervenir oportunamente, complicada por la oscuridad, la neblina y las dificultades del terreno, retrasándose 45 minutos.
Los batallones peruanos que vendrían a reforzarlos, más los restos de los defensores del cerro, retrocedieron al ver la posición tomada por los chilenos.
El general Baquedano envió a los Carabineros de Yungay al mando del teniente coronel Manuel Bulnes Pinto.
El coronel Miguel Iglesias, jefe del I Cuerpo de ejército, reunió los batallones Guardia Peruana n.º 1 y Callao n.º .9 que habían combatido en Villa, los que combinados con los batallones Cajamarca n.º .5, Tarma n.º 7 y Trujillo n.º 11 sumaban 2.500 soldados en dirección de Marcavilca.
En ese momento comenzaron a faltar las municiones en la artillería y la infantería debió retroceder.
A las 7:00 de la mañana, la cañonera Pilcomayo y la lancha Toro empiezan a disparar contra las posiciones peruanas del Morro Solar, y libran un combate de una hora con los cañones que miraban al mar.
**[cita requerida][13] Miguel Iglesias y otras fuerzas peruanas como el Zepita n.º .29, al encontrarse ya con la retaguardia chilena, decidieron marchar hacia Chorrillos.
Patricio Lynch dividió sus fuerzas en dos; una parte atacaría de frente, mientras la otra marcharía flanqueando el cerro.
**[cita requerida][13] El Zepita n.º 29 logra entrar por la calle Lima y combatir en Chorrillos.
Los regimientos chilenos Bulnes y Valdivia se acercaron a la parte del villorrio que apuntaba al Morro.
Los detalles de esta acción solo pueden ser narrados en general, pues los defensores peruanos se parapetaron en cada casa, esquina y habitación, y los atacantes chilenos con el fin de desalojarlos, prendieron fuego a las casas.
Según William F. Sater, los peruanos muertos en la batalla fueron entre 4000-7000, sus heridos 3000 y entre 2000 a 3000 fueron hechos prisioneros por los chilenos.
Sergio Villalobos lo describe como sigue:[15]: 183 Sin embargo, los historiadores difieren en quienes participaron en los hechos y sus causas finales.
Los historiadores peruanos Dellepiane[16] y Basadre[17] sostienen que sólo los soldados chilenos cometieron desmanes en Chorrillos.
[2]: 114 Durante la noche Cáceres y César Canevaro insistieron en avanzar hacia Chorrillos, al frente cinco mil o más soldados peruanos, para hacer un ataque sorpresa a los chilenos.
Aunque Cáceres, en sus memorias, insiste en sostener que se perdió una oportunidad única para infligir al enemigo un grave revés, lo cierto era que, descontando a los soldados chilenos ebrios e indisciplinados (quienes, según cálculos del historiador Carlos Dellepiane, no sobrepasaban el número de dos mil[11]: 153 ), el grueso del ejército chileno se hallaba a cubierto de una sorpresa.
Mientras Nicolás de Piérola se encontraba en Miraflores recibiendo a los extranjeros Tezanos Pinto, De Vorges, Saint John, Sterling y Bergasse du Petit Thouars, considerando las condiciones pedidas por los chilenos, el general Manuel Baquedano, el coronel Pedro Lagos y otros oficiales se encontraban por su lado practicando reconocimientos en el terreno.
Según el historiador peruano Dellepiane, la línea de defensa estaba mal concebida por varios motivos.
Primero, su larga extensión no podía ser cubierta adecuadamente por el limitado número de defensores.
[23][9]: 443 En esta batalla participaron seis oficiales que luego serían presidentes del Perú: Justiniano Borgoño, Lizardo Montero, Guillermo Billinghurst, Miguel Iglesias, Andrés Avelino Cáceres y el entonces mandatario Nicolás de Piérola.