Former Pakistan cricketer Shahid Afridi holds the record for the most sixes in ODI cricket.

Having made his One-Day International (ODI) debut against Kenya in Nairobi in 1996, Shahid Afridi ended his illustrious career with 351 sixes in 398 matches in the 50-over format.

Flamboyant West Indies cricketer Chris Gayle features second on the list of most sixes in ODI cricket. Nicknamed "The Universe Boss", the former Caribbean cricketer smashed 331 sixes in 301 matches in One-Day Internationals.

Indian cricket team captain Rohit Sharma is third on the most sixes in ODI cricket list. Since making his ODI debut against Ireland in Belfast in 2007, Rohit Sharma has clobbered 323 sixes in just 263 ODIs.

Apart from Rohit Sharma, 2011 World Cup-winning captain MS Dhoni (229), legendary duo of Sachin Tendulkar (195) and Sourav Ganguly (190) are the other Indian batters who feature in the top 10 list of most sixes in One-Day International cricket

Know the players with most sixes in ODI cricket.

Most sixes in ODI cricket

Player

Span

Matches

Innings

Sixes

Shahid Afridi (Asia/ICC/PAK)

1996-2015

398

369

351

Chris Gayle (ICC/WI)

1999-2019

301

294

331

Rohit Sharma (IND)

2007-2024

263

254

323

Sanath Jayasuriya (Asia/SL)

1989-2011

445

433

270

MS Dhoni (Asia/IND)

2004-2019

350

297

229

Eoin Morgan (ENG/IRE)

2006-2022

248

230

220

AB de Villiers (Afr/SA)

2005-2018

228

218

204

Brendon McCullum (NZ)

2002-2016

260

228

200

Sachin Tendulkar (IND)

1989-2012

463

452

195

Sourav Ganguly (Asia/IND) 

1992-2007

311

300

190

Shahid Afridi | 351 ODI sixes

Known for his six-hitting prowess in international and domestic circuit, former Pakistan captain Shahid Afridi still tops the most sixes in ODI cricket list. Between 1996 and 2015, Shahid Afridi slammed 351 sixes in 398 matches in One-Day Internationals. He clobbered a total of 476 maximums in his international career.

Chris Gayle | 331 ODI sixes

Former West Indies cricketer Chris Gayle is second on the most sixes in ODI cricket list. Considered to be one of the most destructive batters of all-time, Chris Gayle smashed 331 ODI sixes in 301 matches. Gayle hit the second-most sixes in international cricket, having hammered 553 maximums in his legendary career.

Rohit Sharma | 323 ODI sixes

India’s swashbuckling opening batter Rohit Sharma holds the record for the most sixes in international cricket. Since making his international debut in 2007, Rohit Sharma has clobbered a record 612 maximums in his career at the highest level. In the 50-over format, the right-handed batter has smacked 323 ODI sixes in 263 matches. 

Sanath Jayasuriya | 270 ODI sixes

Former Sri Lankan cricketer Sanath Jayasuriya slammed 270 sixes in ODI cricket, the fourth-most in history. Between 1989 and 2011, Sanath Jayasuriya was a consistent performer for the star-studded Sri Lanka cricket team in white-ball cricket. He clobbered a total of 352 maximums in his international career.

MS Dhoni | 229 ODI sixes

Former India cricket team captain MS Dhoni completes the top five list for most sixes in ODI cricket. Widely regarded as one of the most prolific wicket-keeper batters and captains, MS Dhoni smashed 229 ODI sixes in 350 matches between 2004 and 2019. Overall, the legendary wicketkeeper-batter recorded 359 sixes in international cricket.

Photo credit: Alamy