@Imperious:
You still don’t get it. The war ( at least the 1st and 2nd Punic wars) was not a war across the sea, rather it was a conflict separated by the alps and some distance ON LAND between.
The only thing true is the capital of each was across the sea, but the empires were basically close by LAND.
Well, actually, the first Punic War was one fought over Sicily. The main battles of the first were fought at sea - essentially, whilst Carthaginian influence in Spain was limited (certainly little military expansion prior to Hamilcar’s arrival) the first was a conflict of two nations separated by the sea over an island. The Second was still one in which the sea separated part of their empire from Rome - Sicily was desperately fought over, and so was southern Italy with Hannibal attempting to control the sea route by capturing ports.
The land route was possible but very long, and I see it as rather more of a last resort rather than a preferred method of resupplying Hannibal. In fact, Hannibal was mainly fighting Rome with its own resources, and probably hoped to tie the Romans down there long enough for his countrymen to win back Sicily and Sardinia.
Anyhow, I don’t have great knowledge of many military commanders outside ancient history, so, with my limited knowledge, I’ll pick Hannibal.