In One day International cricket (ODI) the fastest century is held by South African batsman AB De Villiers. De Villiers' century came up in just 31 balls against the West Indies in the 2nd ODI at Johannesburg on 18 January 2015. De Villiers' hundred included 8 fours and 10 sixes. Corey Anderson (New Zealand) is second with a 36 ball century against West Indies in Queenstown on 1 January 2014 and Shahid Afridi (Pakistan) is third with his 37 ball century against Sri Lanka in Nairobi on 4 October 1996.AB de Villiers (South Africa)Runs- 149Balls-314s- 9 | 6s- 16Corey Anderson (NZ)Runs- 131*Balls-364s- 6 | 6s- 14Shahid Afridi (Pakistan)Runs- 102Balls-374s- 6 | 6s- 11Mark Boucher (SA)Runs- 147*Balls-444s- 8 | 6s- 10Brian Lara (West Indies)Runs- 117Balls-454s- 18 | 6s- 4Shahid Afridi (Pakistan)Runs- 102Balls-454s- 10 | 6s- 9Jesse Ryder (NZ)Runs- 104Balls-464s- 12 | 6s- 5Sanath Jayasuriya (SL)Runs- 134Balls-484s- 11 | 6s- 11etc....