India beat rivals Pakistan by 228 runs after Virat Kohli passed 13,000 in one-day internationals en route to his 47th century and KL Rahul marked his return from injury with a ton in a lopsided Asia Cup Super Four clash in Colombo on Monday.
Pakistan's batsmen, needing a daunting 357 for victory after Kohli made 122 not out off 94 balls and Rahul remained unbeaten on 111 off 106, never really got going and finished on 128 with Naseem Shah and Haris Rauf both absent through injury.
India spinner Kuldeep Yadav (5-25) ripped through Pakistan's lineup following a brief rain interruption after Jasprit Bumrah removed Imam-ul-Haq and Hardik Pandya castled the dangerous Babar Azam.
India had reached 147-2 in 24.1 overs after half-centuries by skipper Rohit Sharma (56) and fellow opener Shubman Gill (58) on Sunday but rain meant the match would finish on the reserve day and the runs continued to flow after a delayed start.
"It was a fantastic batting performance, right from yesterday," Rohit said. "When we started, we knew that the wicket was good.
"With interruptions you have to adjust, but with two experienced batters in the middle we knew they would get their eye in and then a terrific effort from both."
Kohli and Rahul saw off the threat of Pakistan's pace attack, missing Rauf due to a right flank problem, and the duo targeted the spinners to post 356-2 in 50 overs.
Rahul and Kohli's unbeaten 233-run partnership for the third wicket was the highest stand in the Asia Cup.
"Both KL and myself are conventional players," Kohli said. "When you have him batting the way he was and me playing, it's tough to break these partnerships because we don't play fancy shots.
"We didn't think about the partnership too much, the idea was to keep batting. It's one of the memorable partnerships we've had and for Indian cricket as well. He hit form for us straight away, good for us."
Rahul, returning to the side after surgery for a quadriceps injury in May, flexed his muscles against spinners Iftikhar Ahmed and Shadab Khan and stepped down the wicket to flick the latter for a massive six after getting his half-century.
India raised the tempo amid the threat of more showers and cruised to the 300-run mark in 45 overs before Rahul - who made the team due to Shreyas Iyer's back issue - reached his sixth hundred and raised his bat like a sword.
Kohli then became the fifth batsman and the quickest to make 13,000 runs in the format and celebrated his own century shortly afterwards, pumping his fists before raising his hands to huge roars at the R Premadasa Stadium.
He finished with a flourish, carting Faheem Ashraf for two fours - including one from a free hit - and a huge shot over the ropes at the end of the final over.
India, whose group meeting with Pakistan in Pallekele this month was abandoned due to rain, take on Sri Lanka on Tuesday.