1. AB de Villiers (South Africa)
Arguably, the greatest ODI batsman of all-time, AB de Villiers is far ahead of his peers, much like Vivian Richards was, in this format. Since 2009, the Proteas skipper hasn’t averaged below 50 in any calendar year. AB’s consistency coupled with his swashbuckling strike-rate; make him a sheer match-winner.
ABD has the best average and the third best strike-rate of all time in ODIs (Min; 5,000 runs). Kohli, Bevan, Amla and Dhoni come close to his average but their strike-rate makes up for a notable difference (Highest S/R; Kohli – 90.47). Only Afridi (117) and Sehwag (104) have a better career S/R but their average is 23 and 35 respectively, which when combined, can only surpass de Villiers’ gigantic average (53.63).
The 32-year-old is very apt at building up innings, and then going for the kill in the slog-overs or coming during the end-overs and creating havoc.
In last two years, among active cricketers, this right-hander has scored 1,836 runs and possesses the best average (68) and strike-rate (121.18) for any batsman (Min: 1,000 runs). The batsman with next best average is Rohit (60) but his strike-rate is 101 (diff; 20) while the batter with next best strike rate is Buttler (120.88) but his average is 45 (diff; 23).
All in all, whether it’s in the last few years or overall, AB seems the best ODI batsman and hence gets the top honours in our list.
* Honorable mentions: Faf du Plessis and Steve Smith.
** ALL STATS UPDATED TILL 28TH OCTOBER 2016.