This is a question that has occupied historians from the ancients to the moderns.
"In spite of all, however, the Senate left no means untried to save the State. It exhorted the people to fresh exertions, strengthened the city with guards, and deliberated on the crisis in a brave and manly spirit. And subsequent events made this manifest. For though the Romans were on that occasion indisputably beaten in the field, and had lost their reputation for military prowess; by the peculiar excellence of their political constitution, and the prudence of their counsels, they not only recovered their supremacy over Italy, by eventually conquering the Carthaginians, but before very long became masters of the whole world."
And in Book VI, An Analysis of the Roman Government he writes : "…that Hannibal was much less filled with joy from having vanquished the Romans in the field, than he was struck with terror and astonishment at the firmness and magnanimity what appeared in their deliberations." He also discusses in IX, 22-26, the Character of Hannibal. That all doesn't help us much though.
Polybius print edition: The Rise of the Roman Empire (Penguin Classics)
Livy, 22.51 is often cited.
"…To Hannibal the victory seemed too great and too joyous for him to realise all at once. He told Maharbal that he commended his zeal, but he needed time to think out his plans. Maharbal replied: "The gods have not given all their gifts to one man. You know how to win victory, Hannibal, you do not how to use it." That day's delay is believed to have saved the City and the empire."
So to the moderns.
Mommsen, History of Rome, Book 3: From Cannae To Zama: The Crisis (Ancient/Classical History at About.com) writes in Military and Political Position of Hannibal: "[That
aim] was the aim dictated to him by right policy, because,
mighty conqueror though he was in battle, he saw very clearly that on
occasion he vanquished the generals and not the city, and that after
battle the Romans remained just as superior to the Carthaginians as he
personally superior to the Roman commanders. That Hannibal even at the
height of his fortune never deceived himself on this point, is
worthier of admiration than his most admired battles."
Theodore Ayrault Dodge, in his Hannibal: A History of the Art of War Among the Carthaginians and Romans Down to the Battle of Pydna, 168 B.C., With a Detailed Account of the Second Punic War introduces his chapter "After Cannae" with the opinion that Hannibal would have been "...insanely rash to march on Rome…He looked farther into the problem than those who would have him do a foolhardy thing because it was brilliant. Rome rose to the occasion as never before. Not for an instant did she dream of peace, compromise, or anything but resistance to the last man. If Hannibal had marched on Rome, he would have ended the war, perhaps, but by the destruction of his own army." He then develops this argument further in the chapter.
G.P. Baker in Hannibal writes (upon Maharbal's advice to Hannibal) "All the world thought so. Titus Livius believed that this one day's delay saved Rome. . . . The world had two thousand years to reflect over the problem; and Hannibal formed it in a much shorter time. . . Moreover, among the Carthaginian corps-commanders Maharbal was a minority of one." And Hannibal's men were exhausted. More on Baker's Book
Adrian Goldsworthy in The Fall of Carthage: The Punic Wars 265-146BC echoes Dodge's thoughts and points out that Cannae was 250 miles from Rome, that Rome was not entirely defenseless, and that a siege would have taken a long time, and also that Hannibal was almost certainly physically and mentally exhausted. (Elsewhere, I've read that he did not have the siege material either.) Goldsworthy also says that on balance the situation seemed very good and that there was no reason for Hannibal to assume that continued pressure on Rome would not result in an eventual defeat.
The lone dissenter in my library is Jakob Seibert, Hannibal (in German). He calls the occasion – or missed occasion – a "verschenkter Sieg" (a give-away victory) and a "gravierendes Versäumnis" (a serious lapse), and that Maharbal couldn't have been any more right when he exhorted Hannibal to march on Rome immediately.
B. D. Hoyos, the author of Unplanned Wars: The Origins of the First and Second Punic Wars (too costly for most of us) wrote an article for Greece & Rome (2nd Ser., Vol. 30, No. 2,Oct., 1983, pp. 171-180), Hannibal: What Kind of Genius? (JSTOR, limited access). In it, he seems to be somewhat in the Seibert camp. He too thinks that Maharbal was right, but also that his "crowning" victory made Hannibal cautious, and that he preferred a slower strategy. He writes: "This was virtually a Punic version of cunctatio. It was just about the worst time for caution to overpower boldness." He comes to the conclusion that Hannibal was "a great man who was not quite great enough".
Bryn Mawr Classical Review 2005.07.65 discusses a follow-up book to the above listed by Hoyos, called Hannibal's Dynasty: Power and Politics in the Western Mediterranean, 247-183 B.C. The review notes: With these two books (plus numerous related articles) to his credit, it is fair to say that Hoyos ... has made his own the study of the Punic wars and the Carthaginian Barcid family in the present generation of scholars of middle-Republican Roman history.