Why did Hannibal ultimately lose against the Romans? I just saw "Hannibal-Romes worst nightmare" and according to this series, one of his generals thought they should attack Rome after the victory at Cannae, but Hannibal refused and demanded that Rome should surrender. When Rome refused to surrender, he asked the Senate in Chartage for more money in order to conquer Italy city by city, so Rome in the end would be surrounded by enemy. The Senate refused. Was it the Senates refusal or Hannibals decision not to attack Rome that led to the Roman victory? Both his decision not to attack Rome and the Senates decision not to give him the money seem difficult to understand. If he had attacked Rome, would he not have been sure to win? And why did the Senate refuse? Was it because they wanted him to attack Rome, which would after all have been the most sensible thing to do? If they had given him more money so as to get more soldiers and equipment, would he have won in the end? To me it seems that attacking Rome at once would be more wise from a military standpoint, as the Roman military forces were at a low point. No reason to wait, so that they might become stronger.