La ciudad fue fundada como Qart Hadasht por el cartaginés Asdrúbal el Bello en el año 227 a. C., sobre un anterior asentamiento ibérico o tartésico, tradicionalmente identificado como Mastia. La ciudad conoció su apogeo durante la época romana, con el nombre de Carthago Nova, época en la que fue capital de provincia tras la división administrativa de Diocleciano. Tras la desaparición del imperio romano, la ciudad con el nombre de Carthago Spartaria, formó parte de los dominios bizantinos en la península ibérica, de la que fue una de sus más importantes ciudades y acaso su capital, resultado destruida tras su toma por los visigodos.