If I had to choose just one book to give you a fun but thorough overview of Hannibal, it would be Adrian Goldsworthy’s The Punic Wars.
It’s actually a good idea to read the story of all three Punic Wars in one, because you can’t understand Hannibal’s war (the Second Punic War) without the other two. It would be as though a history student two-thousand years from now were trying to understand World War II without knowing anything about World War I or the Cold War.
Goldsworthy does a good job of minimizing the clutter (footnotes, parenthetical interruptions aimed at other academics and such) that usually makes academic books unreadable. He gives you great context. For instance, it’s probably not immediately obvious why sieges almost never worked in the ancient world (which is important, since Hannibal, at the crucial moment, decided not to lay siege to Rome). So Goldsworthy describes what it was like to attack and defend a city–all the tunneling and ramming and laddering and sulphur-smeared-javelin-hurling and so forth.
Being British, Goldsworthy also lets his sense of irony peek through on occasion, which brings relief. (Asked what his philosophy of life is, he tells his interlocutor here that “I’m English, so obviously do not have a philosophy.” That’s the sort of thing I mean.)
His more recent book is a biography of Julius Caesar, which I’ve also read and loved. But I’m forcing myself to leave Caesar out of my book because, as my wife has informed me, there are enough ancient dudes in it as it is.