Multiple choice general knowledge sports Which Batsmen in ODI has hit the most number of sixes in an innings? MS Dhoni Shahid Afridi Sanath Jayasuriya Xavier Marshall Reveal answer Fill a bubble to check yourself D Correct answer Explanation Xavier Marshall of the West Indies hit 12 sixes against Canada in 2008, which was a world record at the time. This surpassed the previous record of 11 sixes held by Sanath Jayasuriya and Shahid Afridi.