Ok, I'm going to go out on a limb here, a pretty risky thing as a new member of these forums. However, I want to give my vote to Robert E. Lee. Lee had to take an army that was inferior in numbers, equipment, transportation and support, and fought a superior army to a standstill. Not only that, but on a couple of occasions he very nearly turned the tide of the war.
Lee's willingness to take risks, and to carry through when he got the advantage made him a legend even amongst his opponents.
I give Lee the nod for the greatest commander of all time, not just because he was so good, but he defeated commanders that often had the advantage at the beginning of the day.
Winning when you have the better army is one thing, winning when you are the underdog, and doing it over and over, that takes a great commander.