237 v. Chr. begleitete Hannibal als neunjähriger seinen Vater auf die Iberische Halbinsel, welche reich an Bodenschätzen war. Dort eroberte Hamilkar Barkas große Gebiete, die zum einen die territorialen Verluste Karthagos im letzten Krieg gegen Rom ausgleichen und zum anderen die Machtgrundlage seiner Familie, der Barkiden, sichern sollten. Nach Hamilkars Tod in einer Schlacht gegen aufständische iberische Volksstämme übernahm Hannibals Schwager Hasdrubal das Kommando in Hispanien. Dieser vergrößerte die neue karthagische Provinz erheblich, gründete mit Carthago Nova eine regionale Hauptstadt und schloss mit Rom den Ebro-Vertrag, der einen Fluss namens „Iberus“ als Grenze zwischen beiden Mächten festlegte (es ist unklar, ob es sich um den Río Segura oder den Ebro handelt). Hannibal hatte sich mittlerweile wieder nach Karthago begeben, kehrte jedoch 224/223 v. Chr. auf Wunsch seines Schwagers auf die Iberische Halbinsel zurück. Als Hasdrubals Kommandant der Reiterei konnte sich Hannibal in mehreren schweren Kämpfen gegen iberische Stämme hervortun. Die aus der iberischen Stadt Castulo stammende Imilke wurde Hannibals Gattin. Nach Jakob Seibert war sie eine Ibererin. Ihr Name soll nach Lancel punischen Ursprungs sein.