10.  Jos Buttler

Having represented England 282 times, he has scored 8488 runs including 52 fifties and 11 centuries. He is England’s most consistent batsman in T20Is and also has the highest strike rate in ODIs. His ability to score anywhere on the ground with ease makes him one of the best limited-overs batsmen around the world.

9. Aaron Finch

Having represented Australia 213 times, he has scored 7983 runs including 46 fifties and 19 centuries. He has scored the most number of runs in T20Is for Australia. By opening the batting, scoring runs and being proactive as a captain, Aaron Finch may not end up as one of the best batsmen but will surely end up as being one of the strongest pillars in Australian cricket. 

8. Rohit Sharma

The man who knows how to win knockout matches, the biggest proof of this is that he has won six IPL titles and a T20 WC. Having represented India 379 times, he has scored 14879 runs including 78 fifties and 40 centuries. The Indian vice-captain has been the best batsmen for India in all the formats in the last two years. He has hit the second most sixes (133) and has also the most centuries (4) in T20Is.

7. Steve Smith

Having represented Australia 250 times, he has scored 12712 runs including 60 fifties and 38 centuries. He averages a staggering 61.80 in Test cricket, which is the second most after the great Sir Don Bradman. Though he hasn’t had a similar kind of impact in white-ball cricket, he has always been Australia’s crisis man.

6. Quinton de Kock

The best South African batsman and probably the best keeper-batsman in the world, Quinton de Kock is the most vital cog in the Proteas batting line-up. Having represented South Africa 231 times, he has scored 10205 runs including 57 fifties and 22 centuries His biggest strength has been his attacking style of play.

5. Joe Root

Undoubtedly the best English batsmen across all formats, Joe Root has been the biggest threat to oppositions, especially in Tests.. Having represented England 291 times, he has scored 15889 runs including 90 fifties and 37 hundred. The England Test captain has been the only batsman who has shown resilience by scoring runs consistently and putting the opposition on the backfoot. 

4. Babar Azam

Having represented Pakistan 178 times, he has scored 8389 runs including 53 fifties and 20 centuries. At the moment, he is ranked number 1 and 2 in the ICC ODI and T20I ranking respectively. He is often criticized for his strike rate in T20Is but the form Babar is in, once he has seen the attack, he can single-handedly win matches for Pakistan.

3. David Warner

Having represented Pakistan 178 times, he has scored 8389 runs including 53 fifties and 20 centuries. At the moment, he is ranked number 1 and 2 in the ICC ODI and T20I ranking respectively. He is often criticized for his strike rate in T20Is but the form Babar is in, once he has seen the attack, he can single-handedly win matches for Pakistan.

3. David Warner

2. Kane Williamson

A successor of MS Dhoni in terms of his captaincy, he is the coolest guy on the field even when the entire stadium can feel the pressure. Having represented the Kiwis 303 times, he has scored 15209 runs including 85 fifties and 37 centuries. He is a batsman of a completely different mold in the modern era.

1. Virat Kohli

Undoubtedly the best batsman of the modern era and one of the best to have played the sport, when cricket fans think of batting, the first name that comes to mind is Virat Kohli. Having represented India 437 times, he has scored 22917 runs including 115 fifties and 70 centuries. He is the highest run-scorer in T20Is and the highest run-scorer in ODIs among the active players.