Batting first, Sri Lanka scored 153 for six and then bowled out India for 148 in exactly 20 overs.
Needing 12 off the last over bowled by Lasith Malinga, Indians could get only six as the Lankan slinger finished with figures of 4/30 from four overs. Skipper Mahendra Singh Dhoni did not bat in this unofficial match.
India's inability to finish a close match again came to the fore as the likes of Suresh Raina (41), Yuvraj Singh (33) and Virat Kohli (17) all failed to convert their starts.
India were off to a disastrous start as Shikhar Dhawan (2) played a lazy shot off Kulasekara to be holed out at mid-off while Rohit Sharma (4) was caught at the deep mid-wicket boundary off a Malinga delivery.
Also Read
Raina looked more comfortable on a low-bounce track as he played those customary lofted shots in the region between extra cover and mid-off. He also lofted Kulasekara for a six over mid-wicket.
He was looking good for a big knock as he reached 41 with the help of five fours and a six. But the 31st ball he faced saw him fail to reach to the pitch of the delivery. Ajantha Mendis was the bowler and Raina couldn't clear Rangana Herath at long off boundary.
Yuvraj was having a bit of trouble initially reading Senanayeke's deliveries but he broke the shackles by coming down the track to hit left-arm spinner Rangana Herath over long-on for a six. He also picked up Mendis' carom ball early to hit another six over long on.
Kohli started off on a promising note smacking 17 off only eight balls as the duo added 32 runs in quick time before Malinga struck.
Coming back for his second spell, Malinga got Kohli to play away from his body and he dragged it back onto the stumps. Yuvraj was gone trying to steer Kulasekara and Sangakkara took a fine diving catch behind the stumps.