But the three Indian top order batsmen failed when it mattered the most - adding just a run each to their record. The result - an 18-run loss that ended India's dream to enter a World Cup final, despite brave efforts from Ravindra Jadeja (77) and MS Dhoni (50).
India's batting success has depended on the performance of the top three for the whole tournament. In fact, if the performance of Rohit, Virat, Rahul and during the initial stages Dhawan, are taken away, India have only four half centuries to boast about - two from MS Dhoni and one each from Ravindra Jadeja and Kedar Jadhav.
Rohit had five hundreds to his credit and was approaching Sachin Tendulkar's record of scoring the most number of runs in a single World Cup. That dream will stay put for another four years or maybe forever as such kind of form does not come that often.
Virat should be very disappointed with his effort. This is the third World Cup semi-final that he has been a part of and his scores in these matches read 9 Vs Pakistan in 2011, 1 Vs Australia in 2015 and now 1 vs New Zealand in 2019.
He is a legend in one-day cricket and against New Zealand, chasing 240, he had a chance to prove that even further but when it mattered the most, the Indian captain failed to deliver. He recorded five fifties from eight innings but no hundred. The semi-final was his best chance to add another ton to his ODI resume and take India to the final. But that was not to be.
After Shikhar Dhawan's exit from the tournament, Rahul had taken the opening slot along with Rohit and the two had been highly successful as a pair. There were three partnerships of over hundred by these two batsmen in the tournament. Sadly, the two failed to team up when a stand was needed the most as another decent start against the Kiwis would have set the perfect platform for a successful India chase.
The failure of Rohit and Virat in a big match revives memories of the 2017 Champions Trophy final against Pakistan at The Oval. In that match, India were chasing a much tougher target of 339 and Rohit was dismissed for a duck and Virat for 5. No surprises there as India lost the match by a mammoth 180 runs. Before the World Cup semis, that Champions Trophy was also the last time both Virat and Rohit were dismissed for a single figure score in the same innings.
One of the two had to get going in the semis for India to have any chance of making it to the final for the fourth time. That did not happen and the result is there for everybody to see.