El gobierno del Presidente Aníbal Pinto se sentía satisfecho con los logros alcanzados hasta ese momento, tras la conquista de territorios peruanos que comprendían la región de Tarapacá, Tacna y Arica. Sin embargo, presionado por el Congreso y los partidos políticos, Pinto decidió iniciar la campaña de Lima. Es así como en los primeros días de noviembre salió de Arica la primera división del ejército chileno.
José Francisco Vergara, sucesor de Rafael Sotomayor, se encargó de preparar las fuerzas chilenas que entrarían a la capital peruana.
El 20 de noviembre, las tropas chilenas desembarcaron en Paracas, localidad a más de 200 kilómetros de Lima. Desde ahí comenzó el avance, ocupando varios poblados sin mayor oposición, hasta el 13 de enero de 1881, fecha en que las tropas comandadas por Manuel Baquedano se enfrentaron a las fuerzas peruanas en tres combates consecutivos: la batalla de San Juan, el asalto al morro Solar y la batalla de Chorrillos.
Batalla de Chorrillos (13 de enero de 1881)
Manuel Baquedano se dirigió al valle de Lurín, a quince kilómetros al sur de Lima, con más de 20 mil hombres, mientras Piérola dirigía a 30 mil, con más de cien cañones, en San Juan, Chorrillos y Miraflores.
Baquedano optó por atacar de frente el campo enemigo, mientras Lynch atacó a 400 metros del enemigo. Sin embargo, no todas las divisiones del ejército estaban presentes apoyando la causa; aunque tardó un poco, la tercera división entró al mando del coronel Arístides Martínez y la segunda hizo lo suyo más tarde. La batalla finalizó con el triunfo absoluto de nuestro país.
El ejército peruano, al mando de Piérola, estaba prácticamente perdido. Solo quedaban unos cinco mil hombres de reserva en Miraflores.
Batalla de Miraflores (15 de enero de 1881)
Chile había perdido a muchos hombres durante esta guerra y Baquedano no estaba dispuesto a seguir. Por lo mismo, envió al estadista Isidoro Errázuriz, secretario del ministro Vergara, para ofrecerle la paz a Piérola. Sin embargo, esto no dio resultado y Piérola, que ya había preparado a sus hombres, atacó al ejército chileno. La contienda fue desigual, ya que Chile solo contaba con cuatro mil hombres, mientras que los peruanos atacaron con quince mil.
El general Pedro Lagos se dio el tiempo para que llegaran más fuerzas al ataque, hasta que por fin logró dar un duro golpe al ala derecha del enemigo. Finalmente, el ejército chileno venció a los limeños obligándolos a huir totalmente derrotados.