El capitán salteño Apolinario Saravia orientó al Ejército del Norte para atravesar la ciudad, sorteando el enfrentamiento de los soldados realistas. Sin embargo, el peruano Juan Pío Tristán, quien luchaba para los realistas y había tomado conocimiento del avance de los patriotas, se adelantó un día antes a la batalla para impedir la resistencia.
Finalmente, en la mañana del 20 de febrero comenzó el enfrentamiento. Durante la primera parte del conflicto, se dice, el ejército español dominó el campo de batalla debido al empinado terreno de Castañares que debían recorrer las tropas rioplatenses. Belgrano, por su parte, ordenó que una reserva de infantería –liderada por Manuel Dorrego–, reforzara el acceso a la región salteña. Así, lograron romper la línea enemiga y llegaron a la ciudad. Los realistas, acorralados en la Plaza Mayor, decidieron rendirse al son de las campanas de la Iglesia de la Merced.





