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.