Birmingham: Kohli and Karthik smashed a century each as India warmed up their Champions Trophy campaign with a 5-wicket thumping of Lanka in their first practice tie.
Kohli (144) teamed up with Dinesh Karthik (106 not out) to rescue India from a wobbly start with a 186-run stand for the fifth wicket in just 23.2 overs to chase down a huge target of 334 with one over to spare.
India were reduced to 62 for three in the 13th over and then to 110 for four in the 21st over before Kohli and Karthik resurrected the innings and sent the Sri Lankan bowlers for a leatherhunt in the second part of their run chase.
Sri Lankan captain Angelo Mathews used nine bowlers in the 15-a-side warm-up game and all of them were punished by Kohli and Karthik.
Kohli, who was coming at the back of a strong performance in the recent Indian Premier League, struck 11 fours and three sixes in his 120-ball flawless innings.
Coming in the second over at the team score of five for one, Kohli was cautious at the start of his innings as the situation demanded but played some delightful strokes after he settled down.
Karthik was more than an able partner to Kohli. He gave more strike to Kohli during their partnership, but at the same time also did not let it go any chance of scoring boundaries. He ended the match in style with a four as India reach 337 for five in 49 overs.
Karthik's unbeaten 81-ball innings was studded with 12 fours and two sixes.
Captain Mahendra Singh Dhoni also got some useful time at the middle as he remained not out on 18 from 17 balls, coming after Kohli's departure in the 44th over. Suresh Raina chipped in with a quickfire 31-ball 34.
Kohli, in particular, stamped his class with some beautiful shots all over the park. When he was out in the 44th over, India needed 38 runs from 37 balls for a win with five wickets in hand.
Earlier, young left-hander Kusal Perera and seasoned Tillekaratne Dilshan took the Indian bowling attack to the cleaners as Sri Lanka posted a mammoth 333 for three.
Dilshan smashed a 84 (78b, x4, 1x6) while Perera hit 82 (94b, 7x4, 3x6) as they added 160 runs in 26 overs. The Indian bowlers were unable to dismiss the duo as both retired in order to allow other batsmen get a decent hit out in the middle.
Seamers Pathan (0-45), Bhuvneshwar Kumar (1-58), Ishant Sharma (1-41) weren't consistent with their length while spin trioka of Ravichandran Ashwin (0-45), Ravindra Jadeja (0-41) and Amit Mishra (1-53) also failed to make inroads.
Once Perera retired with the score at 160, Mahela Jayawardene came in and chipped in with 30 (3x4). Dilshan retired at the score 195 while Jayawardene was the first batsman dismissed by Ishant.
Kumar Sangakkara (45, 7x4) and Dinesh Chandimal (46) also got much needed batting practice
Earlier, India have won the toss and will bowl first against.
Both the teams can use as many players from the squad of 15 and it is likely only 11 will bat.
Brief scores
Sri Lanka 333 for 3 (Dilshan 84, Kusal Perera 82)
India 337 for 5 (Kohli 144, Karthik 106*)
Result India won by five wickets