The evidential problem, first
Carthage left no historical literature that survives. Everything we have about Hannibal comes from Greek and Roman writers — Polybius, who had access to people who had fought against him and to a Carthaginian inscription Hannibal himself set up, and Livy, who is later and more rhetorical.
That means the most formidable enemy Rome faced is known through Roman memory. Polybius is careful and comparatively fair; the tradition around him nonetheless supplies a childhood oath of eternal enmity, a characterisation of Punic treachery, and a moral frame in which Roman virtue eventually prevails.
The Italian campaign
In 218 BCE Hannibal marched from Spain across the Alps into Italy with an army including war elephants, a crossing whose route has been argued over for two centuries without resolution.
In three years he destroyed three Roman armies. At the Trebia he used the cold and a concealed force to break a Roman crossing. At Lake Trasimene he executed the largest successful ambush in ancient warfare, catching a consular army in march column against a lake shore. At Cannae in 216 BCE he enveloped and destroyed the largest army Rome had ever assembled.
Then the campaign stalled. Rome refused to negotiate, avoided battle under the Fabian strategy, and rebuilt. Hannibal held the field in Italy for fifteen years and could not take Rome or break the Italian confederation apart, and the war was decided in Spain and Africa.
Zama and after
Recalled to defend Carthage, he was defeated by Scipio at Zama in 202 BCE — a battle in which the cavalry superiority that had made Cannae possible was on the Roman side, because Scipio had secured the Numidians by diplomacy first.
He survived the defeat, held political office at Carthage and reformed its government, and was driven into exile by opponents at home and pressure from Rome. He served at the Seleucid court and later in Bithynia, and took poison to avoid being handed over.
Assessment
The tactical judgement is not seriously disputed: Cannae is among the most complete battlefield victories in recorded history, and the ambush at Trasimene is unmatched in scale.
The strategic judgement is argued. He won every major engagement and lost the war, and the reasons — Rome's manpower, the loyalty of most Italian allies, Carthaginian political support that never matched the commitment, and his own lack of a siege capability adequate to take Rome — are all defended. What is not in doubt is that his opponents learned from him: Scipio's tactics at Zama are Hannibal's, used against him.