La batalla del Guadalquivir fue una batalla que tuvo lugar entre el ejército cartaginés y el romano cerca de la desembocadura del Guadalquivir, en 206 a. C.
Hannón disponía de 700 jinetes y 6000 infantes, de los cuales unos 4000 serían celtíberos, y el resto africanos. Cayo Lucio Marcio Séptimo los atacó y los rodeó en una colina.
Los mercenarios llegaron a un acuerdo con los romanos, y Marcio pidió a Hannón, que los desertores, los prisioneros que tenían retenidos, fueran entregados. Por último les pidió dinero y que bajaran del cerro a la llanura, donde se formalizaría el acuerdo final. Una vez que los mercenarios bajaron del cerro, Marcio les expuso la última de sus condiciones, entregar sus armas para poder retirarse a sus ciudades de origen. La indignación se apoderó de los celtíberos que gritaron que no entregarían sus armas, por lo que se llegó al combate en el que después de haber opuesto una feroz resistencia, cayeron la mitad de los mercenarios.
Los otros mercenarios que pudieron escapar pudieron retirarse junto a Magón Barca que llegó a la costa al frente de una flota de 60 barcos con los que recogió a los mercenarios huidos. El territorio cartaginés quedó reducido a la ciudad de Gadir, y Magón Barca embarcó sus últimas fuerzas, consistente en unos pocos miles de hombres y algunos barcos, y recorriendo la costa llegó a Carthago Nova, donde ancló las naves y desembarcó las tropas, pero los romanos rechazaron el ataque.[1] Magón Barca volvió derrotado a Gadir, donde sus ciudadanos le cerraron las puertas, ya que negociaban con los romanos, con lo que abandonó la ciudad[2] y fue a las Baleares donde pasó el invierno en Portus Magonis, para navegar al año siguiente en el norte de Italia para sublevar a los ligures.