Star Indian batter Virat Kohli failed to deliver with the bat against New Zealand in the 2025 Champions Trophy clash on Sunday, March 2. However, he broke another record nonetheless, adding to the long list of milestones in his international career.
Virat Kohli had recently broken former Indian captain Mohammad Azharuddin's record for most catches by an Indian in ODIs. During the the game against New Zealand, he took the catch of Mitchell Santner to dismiss the opposition skipper.
With this catch, Kohli broke the all-time record for most catches by an Indian in international cricket across all formats. Therefore, the 36-year-old continues to prove his abilities as India's best and among the top fielders overall in world cricket as well.
He pipped the former captain and the legendary Rahul Dravid and now owns this record. That said, let us take a look at the top five Indians with most catches in all international cricket.
#5 Rohit Sharma (229 catches)
Current Indian ODI captain Rohit Sharma has established himself among the country's top fielders. He has played all three formats for India and has contributed on the field apart from scoring runs as well.
Rohit has 229 catches in all and is fifth on this list. From 67 Tests, he has taken 68 catches while he has taken 65 catches from 159 T20Is. The 37-year-old has taken most catches in ODIs, with 96 grabs from 271 games.
#4 Sachin Tendulkar (256 catches)

Indian legend Sachin Tendulkar is known for his prowess as a batter and for several records and tons of runs scored in international cricket. However, Sachin had an equally safe pair of hands.
The 'Master Blaster' ended his international career with 256 catches, the fourth-most for an Indian. He took 115 catches from 200 Tests and 140 catches from 463 ODIs. Sachin played just a solitary T20I and took one catch as well in that game.
#3 Mohammad Azharuddin (261)
Former Indian captain Mohammad Azharuddin was among the best fielders of his time. Azharuddin has a total of 261 catches in his international career. 156 of these came in ODIs. Until Virat Kohli broke his record, he had the most catches by an Indian in the format.
The right-hander also took 105 catches from 99 Test matches. He still has the third-highest number of catches in international cricket by an Indian player. Azharuddin was top-notch on the field as well apart from his batting abilities.
#2 Rahul Dravid (333)

Former Indian cricketer and head coach Rahul Dravid, as great a batter as he was, was also among the finest fielders the sport has seen. He particularly established himself as a solid slip fielder.
Rahul Dravid held the record for the most catches by an Indian in international cricket until the record was broken by Virat Kohli. Dravid has 333 catches in total with 209 catches in Test matches and 124 catches in ODIs.
#1 Virat Kohli (334)
As mentioned earlier, Virat Kohli has now surpassed Rahul Dravid to top this list. The 36-year-old has 334 catches across all formats in international cricket. Apart from being a breat batter, Kohli is known to be a livewire on the field and is among the top fielders at the moment.
He has 121 catches from 123 Tests. In ODIs, he has 159 catches, the most by an Indian in the format and 54 catches in the shortest format of the game.
Follow IPL Auction 2025 Live Updates, News & Biddings at Sportskeeda. Get the fastest updates on Mega-Auction and cricket news