This article is about 10 players who have shown all-round performance both with bat and ball and are regarded as the greatest all-rounder, the stats below prove their valuable contribution for their respective teams.

1. Jacques Kallis (South Africa)

Cricket has seen many great all-rounders but Kallis was second to none. He made his ODI debut in 1996 against England. He is one of the two players who has scored more than 10000+ runs and taken 250+ wickets. He has played 328 matches in ODIs in which he batted in 314 innings and scored 11579 runs at an average of 44.36 which includes 17 centuries and 86 half-centuries. He has bowled 10750 balls in 283 innings taking 273 wickets at an economy of 4.84.

2. Abdul Razzaq (Pakistan)

Abdul Razzaq is one of the best all-rounders to play international cricket for Pakistan. At the age of 17 in 1996 against Zimbabwe he made his ODI debut. As a batsman he was used as floater who could bat at any position as per the situation and as a bowler, he could swing the ball both ways. He has played 265 matches in ODI in which he batted in 228 innings and scored 5080 runs at an average of 29.71 which includes 3 centuries and 23 half-centuries. He has bowled 10941 balls in 254 innings at an economy of 4.7.

3. Shahid Afridi (Pakistan)

Shahid Afridi is one of the greatest all-rounders of Pakistan, he made his ODI debut in 1996 and in the very second match he blasted a century in just 37 balls which remained the fastest century for 17 long years. He was also made the captain of the Pakistan team in 2010. He led his side in the 2011 world cup and took 21 wickets in the tournament which was the joint highest. He featured in 398 ODI games in which he batted in 369 innings and scored 8064 runs at an average of 23.58 which includes 6 centuries and 39 half-centuries. He bowled 17670 deliveries in 372 innings and took 395 wickets at an economy of 4.63.

4. Sanath Jayasuriya (Sri Lanka)

The legend of Sri Lankan cricket is one of the greatest all-rounders in 50 overs cricket. In 1989 against Australia, he made his ODI debut and he is only the second man to score 13000 runs in ODIs and one of the two players to score 10000+ runs and take 250+ wickets. He has played 445 matches in ODIs in which he batted in 433 innings and scored 13430 runs at an average of 32.13 which includes 28 centuries and 68 half-centuries. He has bowled 14874 balls in 368 innings taking 323 wickets at an economy of 4.79.

5. Shakib al Hasan (Bangladesh)

Shakib is the greatest ever player to play for Bangladesh. He made his ODI debut in 2006 against Zimbabwe. He is currently no.1 ranked all-rounder in ODIs. He is the first player to score 600+ runs and take 10+ wickets in a world cup. He is the fastest cricketer to reach the milestone of 5000 runs and 250 wickets in ODIs. He played 230 ODI games in which he batted in 217 innings and scored 7086 runs with an average of 37.69. He bowled 11735 deliveries in 225 innings and picked 301 wickets at an average of 28.94 and an economy of 4.45.

6. Kapil Dev (India)

The 1983 World cup winning captain Kapil Dev is the finest all-rounder to represent his country. The Haryana hurricane is the greatest Indian pacer. He made his debut in 1978 against Pakistan.  He played one of the best ODI innings and scored a blistering  175* of 138 when the team needed the most. He has played 225 matches in his ODI career in which he batted in 198 innings scoring 3783 runs at an average of 23.79 which includes 1 century and 14 half-centuries. He has bowled 11202 balls in 221 innings at an economy of 3.72.

7. Wasim Akram (Pakistan)

Wasim Akram the legendary Pakistani cricketer, made his ODI debut in 1984 against New Zealand. He is a bowler with so much variations in his bowling. He was the first person to take 500 wickets in ODIs and is still the highest wicket-taker for Pakistan in both tests and ODIs. He played 356 matches in ODIs in which he batted in 280 innings and scored 3717 runs at an average of 16.52 which includes 6 half-centuries. He has bowled 18186 balls in ODIs in 351 innings taking 502 wickets at an economy of 3.9 and taking 6 fifers.

8. Sachin Tendulkar (India)

In 1989 the god of cricket (Sachin Tendulkar) made his debut against Pakistan. The legend has many milestones and records under his name, he is the batsman with the most runs and is the one and only player to have 100 centuries 49 of them came in ODIs, he even has 2 five-wicket hauls in his name. He has played 463 matches which is the most matches played by any player. In 452 innings he has scored 18426 runs at an average of 44.83 which includes 49 centuries and 96 half-centuries. He has bowled 8054 balls in ODIs in 270 innings at an econmy of 5.1.

9. Steve Waugh (Australia)

In 1986 he made his debut against New Zealand and was the no.1 ranked all-rounder of his time. He was even made the captain of the Australian side in 1997 and went on to win the world cup in 1999. He was given the name “iceman” for being so calm and composed. He has played 325 matches in ODIs in which he batted in 288 innings scoring 7569 runs at an average of 32.62 which includes 3 centuries and 45 half-centuries. He has bowled 8883 deliveries in ODIs in 207 innings taking 195 wickets at an economy of 4.57.

10. Chris Gayle (West Indies)

One of the most fascinating cricketers the universe boss (Chris Gayle), he has his own style and is a very flamboyant top-order batsman and one of the greatest white ball players for West Indies. In 1999 against India, he made his ODI debut. He was the first cricketer to have centuries in each format of the game. He has played 301 matches in ODIs scoring 10480 runs in 294 innings he has a career average of 37.7, he has 25 centuries and 54 half-centuries. He has bowled 7424 balls in 199 innings taking 167 wickets at an economy of 4.79.