Opener's 140 was the centrepiece of a total of 336-5 that also featured Captain Virat Kohli's 77
Opening batsman Rohit Sharma scored his second hundred in three innings as India maintained their unbeaten record against Pakistan at the World Cup with an 89-run win under the Duckworth-Lewis-Stern (DLS) method on Sunday.
Sharma's 140 was the centrepiece of a total of 336-5 that also featured Captain Virat Kohli's 77.
Victory in this rain-curtailed clash saw India, who have now won all seven of their World Cup matches against Pakistan, remain unbeaten after four pool games at this year's edition.
Pakistan, whose only 2019 pool win so far was a shock defeat of hosts England, were never truly up with the rate in the showpiece match of the 10-team round-robin stage.
They still had hope at 117 for one even though the most made by any side batting second to win a World Cup match is Ireland's 329 for seven against England at Bangalore in 2011.
But spinner Kuldeep Yadav then struck twice to spark a collapse that saw Pakistan lose four wickets for 12 runs in 18 balls as they slumped to 129 for five in 27 overs, long past the 20-over cut-off point needed for a result under DLS.
A third rain stoppage came with Pakistan 166-6 off 35 overs.
The match then descended into something of a farce when play resumed under leaden skies, with Pakistan requiring an outlandish 136 more runs in five overs to reach a revised victory total of 302 in 40 overs.
That target which, eventually became 94 off the last six balls, unsurprisingly proved beyond them as Pakistan finished on 212-6, dealing a major blow to their semi-final hopes as India took the bragging rights yet again.
Worryingly for India, paceman Bhuvneshwar Kumar limped off in the fifth over of Pakistan's chase with a hamstring injury that sidelined him from the rest of the match.
But all-rounder Vijay Shankar, completing the over, struck first ball when he had opener Imam-ul-Haq lbw for seven.
Batsmen Fakhar Zaman (62) and Babar Azam (48) repaired the damage with a century stand, before they both fell to left-arm wrist-spinner Yadav as they tried to up the tempo.
Babar was bowled between bat by a superb delivery before Zaman miscued a sweep to short fine leg.
All-rounder Hardik Pandya then took two wickets in two balls.
All-rounder Mohammad Hafeez was caught at deep square leg before veteran Shoaib Malik played on for his second successive duck, a wicket greeted with huge roars by the massed ranks of India fans in a capacity crowd, with an estimated one billion watching on television.
Earlier, Kohli became the quickest player to 11,000 one-day international runs, getting there in 222nd innings compared to compatriot Sachin Tendulkar's previous record of 276 innings.
Meanwhile, Pakistan left-arm quick Mohammad Amir continued his fine form with 3-47 despite two early warnings for running on the pitch.
But not even Amir could stop Sharma and fellow opener KL Rahul (57) marking their first ODI match as a opening duo with a stand of 136 after Pakistan captain Sarfaraz Ahmed won the toss.
Sharma, who made 122 in India's opening win over South Africa and 57 against Australia, went to fifty with a six over long-on and a cut four off successive deliveries from recalled leg-spinner Shadab Khan.
He then entered the 90s with an extraordinary square-cut six off paceman Hasan Ali.
His single off Shadab saw Sharma to an 85-ball hundred including three sixes and nine fours. It was Sharma's 24th ODI century.
But a quickfire stand of 98 with Kohli ended when Sharma, trying a needlessly extravagant scoop, flicked Hasan to short fine leg.
Kohli, 71 not out at the start of a 55-minute rain break, fell soon after the resumption when, trying to hook Amir, he 'walked' for a catch behind by wicket-keeper Sarfaraz despite replays appearing to show he didn't hit the ball.