In One Day International (ODI) cricket, every run counts and every ball can change the game. Scoring a century is a huge achievement that shows a batsman’s skill, focus, and power. Over the years, some players have amazed the cricket world by scoring fastest centuries in ODI cricket, turning games around in just a few overs. These innings are not just records—they are legendary moments that show how exciting and aggressive ODI cricket can be.
List of 10 Fastest Centuries in ODI Cricket
10. Jos Buttler (England) – 46 Balls

On November 20, 2015, Jos Buttler played a stunning innings against Pakistan in Dubai. He reached his century in just 46 balls, finishing at 116 not out. His knock included 8 sixes and 10 fours. This explosive innings made Buttler one of the players with fastest centuries in ODI cricket.
| Player | Opponent | Balls Faced | Runs | 6s | 4s |
| Jos Buttler | Pakistan | 46 | 116* | 8 | 10 |
ALSO READ: BPL vs IPL: Complete Comparison, Prize Money and Top Performers
9. Jesse Ryder (New Zealand) – 46 Balls

Jesse Ryder scored a 46-ball century against West Indies on January 1, 2014, in Queenstown. He finished at 104 runs with 5 sixes and 12 fours. In the same match, Corey Anderson scored even faster, making it a memorable day for fastest centuries in ODI cricket from New Zealand.
| Player | Opponent | Balls Faced | Runs | 6s | 4s |
| Jesse Ryder | West Indies | 46 | 104 | 5 | 12 |
8. Shahid Afridi (Pakistan) – 45 Balls

Shahid Afridi, known as “Boom Boom,” scored a century in just 45 balls against India in Kanpur on April 15, 2005. He finished with 102 runs, hitting 9 sixes and 10 fours. Afridi’s innings remains one of the most explosive fastest centuries in ODI cricket ever recorded.
| Player | Opponent | Balls Faced | Runs | 6s | 4s |
| Shahid Afridi | India | 45 | 102 | 9 | 10 |
7. Brian Lara (West Indies) – 45 Balls

West Indies legend Brian Lara scored a century in 45 balls against Bangladesh on October 9, 1999, in Dhaka. He finished at 117 runs with 4 sixes and 18 fours. Lara’s innings was elegant yet powerful, showing that fastest centuries in ODI cricket can also have style and timing.
| Player | Opponent | Balls Faced | Runs | 6s | 4s |
| Brian Lara | Bangladesh | 45 | 117 | 4 | 18 |
6. Mark Boucher (South Africa) – 44 Balls

Mark Boucher scored an unbeaten 147 off 44 balls against Zimbabwe on September 20, 2006, in Potchefstroom. His innings included 10 sixes and 8 fours, making it one of the most impressive fastest centuries in ODI cricket. Boucher showed how a wicketkeeper-batsman can dominate a game.
| Player | Opponent | Balls Faced | Runs | 6s | 4s |
| Mark Boucher | Zimbabwe | 44 | 147* | 10 | 8 |
5. Asif Khan (UAE) – 41 Balls

Asif Khan produced a record-breaking innings for UAE against Nepal in Kirtipur on March 16, 2023. He scored 101 runs in just 41 balls, hitting 11 sixes and 4 fours. This performance is one of the top fastest centuries in ODI cricket at the associate level, highlighting the growing talent in world cricket.
| Player | Opponent | Balls Faced | Runs | 6s | 4s |
| Asif Khan | Nepal | 41 | 101 | 11 | 4 |
4. Glenn Maxwell (Australia) – 40 Balls

On October 25, 2023, during the ODI World Cup match against the Netherlands in New Delhi, Glenn Maxwell scored a 40-ball century. He ended at 106 in 44 balls, hitting 8 sixes and 9 fours. Maxwell set a new World Cup record among fastest centuries in ODI cricket, displaying his unique hitting skills.
| Player | Opponent | Balls Faced | Runs | 6s | 4s |
| Glenn Maxwell | Netherlands | 40 | 106 | 8 | 9 |
3. Shahid Afridi (Pakistan) – 37 Balls

Shahid Afridi stunned the cricketing world on October 4, 1996, against Sri Lanka in Nairobi by scoring a 37-ball century. He ended with 102 runs, hitting 11 sixes and 6 fours. This innings is remembered as one of the most explosive fastest centuries in ODI cricket of all time.
| Player | Opponent | Balls Faced | Runs | 6s | 4s |
| Shahid Afridi | Sri Lanka | 37 | 102 | 11 | 6 |
2. Corey Anderson (New Zealand) – 36 Balls

Corey Anderson scored a phenomenal 36-ball century against West Indies on January 1, 2014, in Queenstown. He finished at 131 not out, hitting 14 sixes and 6 fours. This innings broke Afridi’s long-standing record, ranking among the fastest and most powerful centuries in ODI cricket.
| Player | Opponent | Balls Faced | Runs | 6s | 4s |
| Corey Anderson | West Indies | 36 | 131* | 14 | 6 |
1. AB de Villiers (South Africa) – 31 Balls

The record for the fastest century in ODI cricket is held by AB de Villiers. On January 18, 2015, against West Indies in Johannesburg, he reached 100 in just 31 balls and finished with 149 runs. His innings included 16 sixes and 9 fours, showing unmatched timing and power, making it the ultimate example of fastest centuries in ODI cricket.
| Player | Opponent | Balls Faced | Runs | 6s | 4s |
| AB de Villiers | West Indies | 31 | 149 | 16 | 9 |
FAQs
1. Which is the fastest century in ODI cricket?
The fastest century in ODI cricket is held by AB de Villiers, who scored 100 runs in just 31 balls against West Indies on January 18, 2015, in Johannesburg.
2. Who has scored the most centuries among the top 10 fastest centuries in ODI cricket?
Among the top 10 fastest centuries, Shahid Afridi appears twice, with 37-ball and 45-ball centuries, showing his explosive batting style in ODIs.
3. Which player scored the fastest World Cup century in ODI cricket?
Glenn Maxwell holds the record for the fastest World Cup century, scoring 100 runs in 40 balls against the Netherlands on October 25, 2023, in New Delhi.
4. Are there any fastest centuries in ODI cricket from associate nations?
Yes, Asif Khan from UAE scored one of the fastest centuries for an associate nation, reaching 100 runs in just 41 balls against Nepal on March 16, 2023.

