The Battle of Lake Trasimene was fought when a Carthaginian force under Hannibal ambushed a Roman army commanded by Gaius Flaminius on 21 June 217 BC, during the Second Punic War. It took place on the north shore of Lake Trasimene, to the east of Cortona, and resulted in a heavy defeat for the Romans. The First Punic War between Carthage and Rome ended in 241 BC after 23 years. In 219 BC the quasi-monarchial, autonomous ruler of the Carthaginian territories in south-east Iberia, Hannibal, besieged, captured and sacked the Roman protected town of Saguntum. The following spring Rome declared war on Carthage and Hannibal left Iberia for Italy with a major military expedition. Crossing the Alps Hannibal arrived in Cisalpine Gaul (northern Italy) in autumn 218 BC. The Romans rushed reinforcements north from Sicily and the Carthaginians engaged and defeated the combined Roman army at the Battle of the Trebia.