Trace the history of the fastest 100 in ODI cricket — from Kapil Dev's era to AB de Villiers' 31-ball record. Every milestone covered.
Latest Story

Fastest 100 in ODI Cricket History Timeline
Latest Update — October 2026
As of 18 October 2026, AB de Villiers’ 31-ball hundred against West Indies (January 2015) is still the fastest century in men’s ODIs. The quickest ODI hundred of 2026 found in match reports is Rahmanullah Gurbaz’s 48-ball century for Afghanistan against India at Dharamsala in June 2026 — Afghanistan’s fastest ODI hundred and the second-fastest ever against India, per Yahoo Sports. This refresh also corrects the all-time top 10 against the official record lists: Glenn Maxwell’s 40-ball World Cup hundred (2023) and UAE batter Asif Khan’s 41-ball hundred (2023) now sit fourth and fifth, and Cameron Green’s 47-ball hundred (August 2025) is the second-fastest by an Australian.
Fastest ODI Centuries: Key Facts
Fastest ODI Centuries — Key Takeaways
- AB de Villiers’ 31-ball century (2015) is the fastest in ODI history — 5 balls quicker than the previous record.
- Corey Anderson held the record for 382 days (1 Jan 2014 – 18 Jan 2015).
- Shahid Afridi’s 37-ball century in 1996 — in only his second ODI — stood as the world record for more than 17 years.
- South Africa’s Wanderers, Johannesburg is the venue for ABD’s 149 off 44 balls.
- West Indies have conceded the two fastest ODI centuries — to both de Villiers and Anderson.
- None of the top three came at an ICC event; Glenn Maxwell’s 40-ball hundred in 2023 is the fastest in World Cup history.
- ABD’s knock included 16 sixes and 9 fours — he reached his hundred off just 31 balls.
- UAE’s Asif Khan (41 balls vs Nepal, 2023) holds the fastest ODI hundred by an Associate-nation batter, fifth on the all-time list.
- No Indian batter appears in the top 10; India’s fastest is Virat Kohli’s 52-ball hundred vs Australia in Jaipur (2013).
- The top 10 fastest hundreds took an average of about 41 balls each; Afridi appears twice (37 balls in 1996, 45 balls in 2005).
Top 10 Fastest ODI Centuries of All Time
Records ranked by balls faced to reach 100. Data sourced from ESPNcricinfo and ICC official records.
South Africa
New Zealand
Pakistan
Australia
UAE
South Africa
West Indies
Pakistan
New Zealand
England
Chronological Timeline: How the Record Evolved
From the pinch-hitting revolution of 1996 to the Wanderers masterclass of 2015 — and the fastest hundreds since.
Shahid Afridi Sets the Bar — 37 Balls (Nairobi, Oct 4, 1996)
In only his second ODI, Shahid Afridi — officially listed as 16 at the time, though his 2019 autobiography indicated he was older — was promoted up the order as a pinch-hitter against the world champions Sri Lanka at the KCA Centenary Tournament in Nairobi. He reached his century off 37 balls, breaking the 48-ball record Sanath Jayasuriya had set against Pakistan in Singapore that April, and his 11 sixes equalled the ODI record. He batted with a bat Sachin Tendulkar had given to Waqar Younis. Afridi’s record stood for 17 years, 2 months and 28 days.
Corey Anderson Ends 17-Year Wait — 36 Balls (Queenstown, Jan 1, 2014)
On New Year’s Day 2014, in a match cut to 21 overs a side by rain, 23-year-old all-rounder Corey Anderson hit 14 sixes and 6 fours against West Indies. He reached his century in 36 balls, one better than Afridi’s 17-year-old record, while Jesse Ryder made a 46-ball hundred in the same innings. New Zealand posted 283/4 and won by 159 runs. Anderson’s 131* off 47 balls remains New Zealand’s fastest ODI century — but the world record lasted only 382 days.
AB de Villiers Rewrites History — 31 Balls (Johannesburg, Jan 18, 2015)
Just over a year after Anderson’s record, AB de Villiers walked in late in the innings after a 247-run opening stand between Hashim Amla and Rilee Rossouw. He reached 50 off 16 balls — also an ODI record — and 100 off 31, beating Anderson’s mark by 5 balls. He hit 16 sixes and 9 fours, equalling Rohit Sharma’s then-record for sixes in an ODI innings, before falling for 149 off 44 balls (strike rate 338.63). South Africa posted 439/2, with Amla (153*) and Rossouw (128) also making hundreds, and won by 148 runs. As of October 2026 it is still the fastest ODI century.
Jos Buttler’s Dubai Blitz — 46 Balls (Dubai, Nov 20, 2015)
Ten months after de Villiers’ record, Jos Buttler hit the fastest ODI century by an England batter — 46 balls against Pakistan in Dubai. His 116* off 52 balls included 10 fours and 8 sixes and came during England’s white-ball rebuild under Eoin Morgan after their early exit from the 2015 World Cup. It remains England’s fastest ODI hundred; Buttler later added a 47-ball hundred against the Netherlands in Amstelveen in June 2022.
Glenn Maxwell’s World Cup Record — 40 Balls (Delhi, Oct 25, 2023)
At the 2023 World Cup, Glenn Maxwell reached 100 off 40 balls against the Netherlands — the fastest century in World Cup history and the fourth-fastest in all ODIs. It beat the 49-ball World Cup mark Aiden Markram had set against Sri Lanka earlier in the same tournament, which had itself broken Kevin O’Brien’s 50-ball record from 2011. Maxwell finished on 106 off 44 balls and Australia won by 309 runs. Weeks later he made 201* against Afghanistan while battling cramp, and Australia went on to win the title.
Cameron Green’s Maiden Hundred — 47 Balls (Mackay, Aug 24, 2025)
Batting at No. 3 after Travis Head and Mitchell Marsh opened with a 250-run stand, Cameron Green reached his maiden ODI century off 47 balls in the third ODI against South Africa. He finished on 118* off 55 balls with 6 fours and 8 sixes as Australia made 431/2. According to cricket.com.au and CricTracker, it is the second-fastest ODI hundred by an Australian, behind only Maxwell’s 40-ball effort, and moved Maxwell’s earlier 51-ball hundred from the 2015 World Cup down the list.
Rahmanullah Gurbaz Sets Afghanistan Record — 48 Balls (Dharamsala, June 2026)
In the first ODI of Afghanistan’s June 2026 tour of India, opener Rahmanullah Gurbaz reached 100 off 48 balls — the fastest ODI century by an Afghanistan batter and his ninth in the format. He was bowled by Nitish Kumar Reddy for 102 off 51 balls with 8 fours and 8 sixes. Per Yahoo Sports, it is the second-fastest ODI hundred against India, behind Shahid Afridi’s 45-ball century in Kanpur in 2005, and matches Jayasuriya’s 48-ball record from 1996. It was the fastest ODI hundred of 2026 found in match reports, still 17 balls slower than de Villiers’ record.
Player Profiles: The Legends Behind the Records

Key Entities: People, Venues & Milestones
AB de Villiers
South African batting genius who retired from international cricket in 2018 holding the record for the fastest ODI century (31 balls, 2015). Ranked among the greatest batsmen of the modern era. Known as Mr. 360 for his ability to hit in all directions.
Wanderers Stadium, Johannesburg
Known as the Bullring, this high-altitude ground (about 1,750m) in Johannesburg is the venue for ABD’s world-record innings of 149. Thinner air at altitude helps the ball carry, and the ground is known as one of cricket’s best venues for power-hitting.
Shahid Afridi
Pakistani all-rounder who set the fastest ODI century record in his second ODI in 1996, officially aged 16. His 37-ball century stood as the world record for more than 17 years, and he holds two spots in the all-time top 10.
Queenstown Events Centre (John Davies Oval)
Scenic New Zealand ground below the Remarkables range. In a rain-shortened 21-over match on New Year’s Day 2014 it hosted two of the ten fastest ODI hundreds in one innings — Corey Anderson (36 balls) and Jesse Ryder (46 balls).
Fastest ODI Century (31 balls)
The official world record for the fastest century in One Day International cricket, set by AB de Villiers on January 18, 2015 against West Indies in Johannesburg. Listed in the official records and ESPNcricinfo’s Statsguru. Still standing as of October 2026.
KCA Centenary Tournament 1996 (Nairobi)
Four-team ODI tournament involving Kenya, Pakistan, South Africa and Sri Lanka, played in Nairobi in September–October 1996. Shahid Afridi’s 37-ball century came in the sixth match, Pakistan vs Sri Lanka, at the Nairobi Gymkhana Club, which sits at roughly 1,800m above sea level.
Data Tables
| Rank | Batsman | Country | Balls | Score | vs | Venue | Date |
|---|---|---|---|---|---|---|---|
| 1 | AB de Villiers | South Africa | 31 | 149 (44) | West Indies | Wanderers, JHB | 18 Jan 2015 |
| 2 | Corey Anderson | New Zealand | 36 | 131* (47) | West Indies | Queenstown | 1 Jan 2014 |
| 3 | Shahid Afridi | Pakistan | 37 | 102 (40) | Sri Lanka | Nairobi | 4 Oct 1996 |
| 4 | Glenn Maxwell | Australia | 40 | 106 (44) | Netherlands | Delhi | 25 Oct 2023 |
| 5 | Asif Khan | UAE | 41 | 101* | Nepal | Kirtipur | 16 Mar 2023 |
| 6 | Mark Boucher | South Africa | 44 | 147* (68) | Zimbabwe | Potchefstroom | 20 Sep 2006 |
| 7 | Brian Lara | West Indies | 45 | 117 | Bangladesh | Dhaka | 9 Oct 1999 |
| 8 | Shahid Afridi | Pakistan | 45 | 102 (46) | India | Kanpur | 15 Apr 2005 |
| 9 | Jesse Ryder | New Zealand | 46 | 104 (51) | West Indies | Queenstown | 1 Jan 2014 |
| 10 | Jos Buttler | England | 46 | 116* (52) | Pakistan | Dubai | 20 Nov 2015 |
| Batsman | Year Set | Year Broken | Duration | Broken By |
|---|---|---|---|---|
| Sanath Jayasuriya (48 balls) | Apr 1996 | Oct 1996 | 6 months | Shahid Afridi |
| Shahid Afridi | 1996 | 2014 | 17 years 2 months | Corey Anderson |
| Corey Anderson | 2014 | 2015 | 382 days | AB de Villiers |
| AB de Villiers | 2015 | Still standing | 10+ years | — |
| Country | Fastest Century | Batsman | Year | vs |
|---|---|---|---|---|
| South Africa | 31 balls | AB de Villiers | 2015 | West Indies |
| New Zealand | 36 balls | Corey Anderson | 2014 | West Indies |
| Pakistan | 37 balls | Shahid Afridi | 1996 | Sri Lanka |
| Australia | 40 balls | Glenn Maxwell | 2023 | Netherlands |
| West Indies | 45 balls | Brian Lara | 1999 | Bangladesh |
| England | 46 balls | Jos Buttler | 2015 | Pakistan |
| Sri Lanka | 48 balls | Sanath Jayasuriya | 1996 | Pakistan |
| India | 52 balls | Virat Kohli | 2013 | Australia |
| Venue | Altitude (m) | Record Set | Batsman | Balls to 100 |
|---|---|---|---|---|
| Gymkhana, Nairobi | 1,795m | 1996 | Shahid Afridi | 37 |
| Queenstown Events Centre | 310m | 2014 | Corey Anderson | 36 |
| Wanderers, Johannesburg | 1,753m | 2015 | AB de Villiers | 31 |
| Potchefstroom | 1,354m | 2006 | Mark Boucher | 44 |
| Arun Jaitley Stadium, Delhi | ~215m | 2023 | Glenn Maxwell | 40 |
ABD vs Anderson: The Two Greatest ODI Centuries Head to Head
AB de Villiers (2015) vs Corey Anderson (2014)
Fun Facts & Lesser-Known Details
- ABD reached 50 off 16 balls and 100 off 31 — then added 49 more runs in 13 balls before he was out for 149.
- Corey Anderson’s 36-ball record lasted exactly 382 days before ABD broke it.
- Afridi’s record bat had been given to Waqar Younis by Sachin Tendulkar before it was handed to the young Afridi.
- West Indies have conceded the two fastest ODI centuries in history (ABD and Anderson) — both in bilateral series.
- Afridi was officially 16 when he broke the record, though his autobiography later suggested he was older.
- Three of the five fastest ODI hundreds before 2023 came at altitude: Johannesburg, Nairobi and (for Boucher) Potchefstroom.
- Afridi’s century came in only his second ODI — he finished his career with 398 ODIs.
Explore More Timelines
Frequently Asked Questions
Sources & further reading
Every dated entry above was checked against these references. Last reviewed 18 October 2026.