Kumar Sangakkara hit a brilliant 103 as Sri Lanka survived anxious moments to overcome India by two wickets in a thrilling last-over finish Friday, securing their second win in the Asia Cup.
The victory was set up by spinners Ajantha Mendis and Sachithra Senanayake, who shared seven wickets to restrict the reigning world champions to 264-9 in the day-night match in Fatullah.
But Sri Lanka lost wickets at regular intervals and were reduced to 216-7 in the 44th over when Thisara Perera helped Sangakkara add 42 crucial runs for the eighth wicket.
Left-handed Sangakkara, who hit 12 boundaries and a six in his 18th one-day century, fell in the penultimate over when just seven runs were needed for victory.
But Mendis and Perera saw Sri Lanka through with four deliveries to spare in a nail-biting finish, giving their team a second win after they beat Pakistan in the tournament opener.
India, who won against Bangladesh, must defeat arch-rivals Pakistan in Dhaka on Sunday to stay in contention for a place in the final.
Opener Shikhar Dhawan scored 94 as India, sent in to bat, moved to 175-2 in 35 overs before losing five wickets for 40 runs to slide to 215-7.
Big hitting by the lower order, including two sixes by last man Mohammed Shami off Mendis, lifted India past the 250-run mark.
Mendis, who replaced seamer Suranga Lakmal for the match, justified his selection with four for 60, including the key scalps of Dhawan and stand-in captain Virat Kohli.
Off-spinner Senanayake finished with his best one-day figures of three for 41 as the Indians struggled against the turning ball on the slow wicket.
Kohli, leading India in the absence of the injured Mahendra Singh Dhoni, put on 97 for the second wicket with Dhawan after Rohit Sharma had been trapped leg-before by Senanayake for 13.
Kusal Perera and Lahiru Thirimanne gave Sri Lanka a flying start with a 80-run partnership for the first wicket by the 18th over.
Off-spinner Ravichandran Ashwin removed both openers, trapping Thirimanne leg-before for 38 and then having Kusal Perera caught behind for 64.
India bounced back strongly when left-arm spinner Ravindra Jadeja dismissed Mahela Jayawardene and Dinesh Chandimal with consecutive deliveries to reduce Sri Lanka to 148-4 in the 32nd over.
Seamer Mohammad Shami, who conceded 42 runs in his first six overs, returned for a spell and trapped skipper Angelo Mathews leg-before with his second ball.
Shami also had Senanayake caught at mid-wicket and Jadeja had Chaturanga de Silva leg-before as Sri Lanka slumped to 216-7.
Afghanistan will take on hosts Bangladesh in the next match in Fatullah on Saturday.
SRI LANKA INNINGS
A magnificent century from Kumar Sangakkara (103) steered Sri Lanka to a thrilling two-wicket win against India in Match four of the Asia Cup cricket tournament at Fatullah on Friday.
Chasing a stiff target of 265 under lights, Sri Lanka sneaked home with four balls to spare and surge to the top of table with eight points.
Sangakkara's 84-ball century was studded with 12 boundaries and a six, adding a crucial 42 for the eighth with Thisara Perera who hit the winning run after tailender Mendis hammered a boundary in the last ball of the 49th over.
After India put into bat made 264-9, Sri Lanka were given a flying start by openers Kusal Perera (64) and Lahiru Thirimanne (38) who posted 80 in 17.2 overs.
Thirimanne hit four boundaries and a six during his fluent knock before being trapped leg before by Ashwin.
Kusal was a bit slow off the blocks before clubbing two sixes and four boundaries and shared in a 54-run stand for the second wicket with Sangakkara before nicking Ashwin behind.
Left arm spinner Jadeja turned the match on its head and the swung the pendulum in favour of India by capturing the wickets of Mahela and Chandimal off successive balls in the 37th over.
Sangakkara continued unfazed as wickets tumbled at the other end to see Sri Lanka home.
Ashwin claimed two for 42 while Jadeja had the best return of 10-1-30-3.
Shami's three wickets cost 81 while Kumar went for 45 without any success.
Kohli used seven bowlers including Rohit Sharma whose five overs cost 29. Earlier, opener Shikhar Dhawan missed out on a century by six runs as spinner Ajantha Mendis returned to haunt India by restricting them to 264 for nine.
Sent into bat, Dhawan (94) and captain Virat Kohli (48) led India's recovery in a 97-run second-wicket partnership, before Mendis rocked India claiming 4 for 60 on a pitch which was slow and offered variable bounce.
Thisara is dropped by Dhawan at mid-off in the first ball of the last over bowled by Kumar before scrambling for a single in the next as Sri Lanka win by two wickets with four balls to spare.
Sri Lanka need one to win on the last over from Kumar with Thisara on strike.
Mendis hits a streaky boundary off Shami past the keeper. SL 264-8 in 49 overs.
Sri Lanka need 7 from 9 balls with Mendis on strike.
Shami strikes as Sangakkara slices a full toss with Ashwin taking a good low catch. SL 258-8 in 48.3 overs.
Kumar Sangakkara c Ashwin b Mohammed Shami 103 (84b 12x4 1x6)
Sangakkara swings Shami to the midwicket boundary to bring up his 18th ODI century.
Sri Lanka need 12 from 12 with Sangakkara on 99.
Sangakkara is in red hot form cracking consecutive boundaries off Kumar in front and behind the wicket.
Sri Lanka are 242-7 need 23 from 18 balls.
Sangakkara is sizzling form clubbing the first ball from Shami for a towering six into the stands at midwicket.
Sri Lanka 33 from 24 balls. SL 232-7 in 46 overs.
Sangakkara pounces on a full toss from Kumar's first ball to get a boundary through the gap on the off.
Sri Lanka are 221-7 in 45 overs and need 44 from 30 balls.
Ashwin completes his spell with figures of 10-0-42-2.
Sri Lanka need 44 from 48 balls. SL 217-7 in 44 overs.
Jadeja completes his quota returning figures of 10-1-30-3.
Jadeja claims his third wicket trapping Chathuranga leg before even as the batsman rushed out of his crease. SL 216-7 in 43.1 overs.
Chathuranga de Silva lbw b Jadeja 9 (12b 1x4 0x6)
Sangakkara keeps the scoreboard ticking with another boundary by lofting Kumar to long-on. SL 216-6 in 43 overs.
Sri Lanka need 57 from 48 balls as India seem to be losing their grip with the dew factor coming into play.
Chathuranga also gets into the act square cutting Ashwin for his first boundary. SL 208-6 in 42 overs.
Sangakkara takes a calculated risk against Rohit finding the gap on the offside for a boundary with a crisp shot. SL 200-6 in 41 overs.
Sri Lanka need 74 from 60 balls with four wickets in hand Sangakkara on 54.
India have pegged back Sri Lanka in the Batting Powerplay losing two wickets for 30 runs. SL 191-6 in 40 overs.
Sangakkara dances down the track and lofts Jadeja to the midwicket fence to reach his 85th ODI half century.
Good comeback by Shami after being hit for a couple of boundaries to claim his second wicket as Senanayake tries to blast him to the fence again. SL 183-6 in 39 overs.
Sachithra Senanayake c Sharma b Mohammed Shami 12 (13b 2x4 0x6)
Senanayake steers Shami through the gap between point and third man for a boundary while Sangakkara punches him through midwicket with superb timing.
Senanayake hits a boundary chipping Shami back over his head. SL 172-5 in 37 overs.
Shami strikes trapping Mathews leg before. SL 165-5 in 36.2 overs.
Angelo Mathews lbw b Mohammed Shami 6 (18b 0x4 0x6)
Sangakkara slams Rohit for a boundary as drinks are taken ahead of the Batting Powerplay. SL 161-4 in 35 overs.
Jadeja bowls a maiden to Mathews. SL 154-4 in 34 overs.
Skipper Mathews gets a couple of the hat-trick ball from Jadeja but Sri Lanka are on the back foot. SL 150-4 in 32 overs.
Jadeja is on a hat-trick as Chandimal is beaten and bowled by a beauty for a first ball duck. SL 148-4 in 31.2 overs.
Dinesh Chandimal b Jadeja 0 (1b)
Mahela's poor run of form continues as he hits Jadeja straight to Rohit. SL 148-3 in 31.1 overs.
Mahela Jayawardene c Rohit Sharma b Jadeja 9
Mahela sweeps Rohit to square leg for a boundary as Sri Lanka seem to be doing it comfortably. SL 148-2 in 31 overs.
Sangakkara (30) survives being stumped after a big miss by Karthik off Jadeja. SL 141-2 in 30 overs.
Ashwin claims his 100th ODI wicket as Kusal nicks one behind. SL 134-2 in 25 overs.
Kusal Perera c Kathik b Ashwin 64 (81b 4x4 2x6)
Sangakkara flicks Shami to the square leg fence to bring up the 50 partnership with Kusal off just 52 balls. SL 132-1 in 26 overs.
Sangakkara greets part-time spinner Rayudu by lofting him straight for a boundary while Kusal pulls a short delivery to midwicket. SL 125-1 in 25 overs.
Sangakkara hits a classic cover drive to the fence off Jadeja. SL 108-1 in 23 overs.
Kusal completes his third ODI half century off 62 balls. SL 97-1 in 21 overs.
Kusal whips Binny for another spectacular six over square leg dismissing the ball from his presence virtually. SL 90-1 in 19 overs.
Ashwin strikes in his fifth over trapping Thirimanne leg before. SL 80-1 in 17.2 overs.
Lahiru Thirimanne lbw b Ashwin 38 (55b 4x4 1x6)
Kusal seems to be having a charmed life with Jadeja failing to hold on to a chance with a valiant effort in the outfield. SL 80-0 in 17 overs.
Binny replaces Kumar who has figures of 6-1-14-0. SL 65-0 in 13 overs.
Kusal slams Ashwin with a lovely carpet drive to the long-on boundary. SL 61-0 in 12 overs.
India hit five boundaries in the first 10 while Sri Lanka have got six boundaries and two sixes in the Batting Powerplay.
Kusal whacks Shami Jayasuriya-style for a massive six over midwicket as Sri Lanka get a solid start. SL 51-0 in 10 overs.
Thirimanne is on song unleashing a classic square drive through the covers off Kumar for another boundary. SL 43-0 in 9 overs.
Spin introduced in the eighth over and Thirimanne takes on Ashwin lofting him over long-on for the first six of the innings. SL 39-0 in 8 overs.
Thirimanne gets going with consecutive boundaries off Shami, including a classic off drive past the bowler. SL 28-0 in 6 overs.
Kumar bowls a maiden to Thirimanne. SL 17-0 in 5 overs.
Kusal survives after a collision between Rahane and Dhawan results in the skier going for a boundary. SL 17-0 in 4 overs.
Thirimanne gets his first boundary punching Kumar through the covers. SL 13-0 in 3 overs.
Kusal hits the first boundary of the innings which streaks past the keeper off the bottom edge. SL 9-0 in 2 overs.
Thirimanne survives a confident shout for leg before off Kumar as they begin the chase of 265.
Jadeja was unbeaten on 22 and Shami on 14 as India made 64 runs in the last 10 overs to set Sri Lanka a stiff target of 265.
Having been put into bat, India started slowly off the blocks before being lifted by 97-run stand for the second wicket in 103 balls by Shikhar Dhawan (94) and Virat Kohli (48).
Mendis who claimed for four 60 pegged back India by removing Kohli with a peach of delivery.
The Indian captain made 48 off 51 balls slamming four boundaries and a six.
Dhawan took charge thereafter cracking seven boundaries and a six before falling short of a century being attempting to heave Mendis out of the ground.
His dismissal triggered a middle order collapse which saw India lose four wickets in 25 balls for the addition of 19 runs to slump to 215-7 in the 44th over.
Karthik fell in the same over as Dhawan followed by Rayudu with miscued shots while Binny was trapped leg before by Senanayake who claimed three for 41.
Ashwin (18) hit some lusty blows before being yorked by Malinga and Shami blasted a couple of sixes to spoil Mendis' figures and swell India's final total.
Malinga bowls an excellent final over conceding just five runs as India finish on 264-9 in their 50 overs.
Shami blasts a couple of massive sixes off Mendis who finishes with figures of 10-0-60-4. Ind 259-9 in 49 overs.
Mendis claims his fourth wicket thanks to a brilliant piece of stumping off a wide delivery. Ind 247-9 i 48.2 overs.
Bhuvneshwar Kumar st Sangakkara b Mendis 0 (0b 0x4 0x6)
Malinga gets Ashwin rattling his stumps with a yorker after having been hit for a boundary earlier. Ind 245-8 in 48 overs.
Ravichandran Ashwin b Malinga 18 (16b 2x4 0x6)
Ashwin cuts Thisara ate to get a boundary to third man. Ind 224-7 in 45 overs.
India have lost four wickets in 25 balls for the addition of 19 runs from a strong position of 196-3 in the 40th over.
Senanayake has finished with career-best figures of 10-0-41-3. Ind 216-7 in 44 overs.
India's middle order are collapsing in a heap as Binny goes for a duck trapped leg before by Senanayake. Ind 215-7 in 43.3 overs.
Stuart Binny lbw b Senanayake 0 (4b 0x4 0x6)
Chathuranga finishes with figures of 10-0-51-1. Ind 214-6 in 43 overs.
Jadeja smashes leg spinner Chathuranga straight over his head for a six but the leg spinner strikes in his final over as Rayudu miscues to Kusal at long-off. Inda 214-6 in 42.3 overs.
Ambati Rayudu c Kusal Perera b de Silva 18 (23b 1x4 0x6)
Mendis has struck crucial blows to put Sri Lanka back in the game. Ind 203-5 in 41 overs.
Double strike by Mendis as Karthik perishes as he gets a leading edge to mid-off after cracking a boundary the previous ball. Ind 200-5 in 40 overs.
Dinesh Karthik c de Silva b Mendis 4 (3b 1x4 0x6)
Dhawan misses out on a hundred being castled attempting to heave Mendis out of the ground. Ind 196-4 in 39.3 overs.
Shikhar Dhawan b Mendis 94 (114b 7x4 1x6)
India make 28 for the loss of Rahane in the Batting Powerplay. Ind 190-3 in 38 overs.
Rayudu flicks an attempted yorker from Malinga to the fence. Ind 186-3 in 37 overs.
Senanayake strikes with the first delivery after the drinks interval as Rahane slices to Thirimanne at short third man. Ind 175-3 in 35.1 overs.
Ajinkya Rahane c Thirimanne b Senanayake 22 (27b 1x4 0x6)
Dhawan dances down the track and attacks Malinga swinging a low full toss to the midwicket fence as drinks are taken. Ind 175-2 in 35 overs.
India have taken the Batting Powerplay in the 34th over with Dhawan (81) and Rahane (17) in the middle. Ind 166-2 in 34 overs.
Rahane gets hits first boundary slamming a short ball from Chathuranga to square leg. Ind 162-2 in 33 overs.
Senanayake saves another possible boundary as Sri Lanka have not let up anything on the field. Ind 155-2 in 32 overs.
Malinga is back into the attack as Sri Lanka show attacking intent. Ind 145-2 in 30 overs.
Mendis goes for eight runs in his next over as Sri Lanka go into a defensive mode. Ind 141-2 in 29 overs.
The partnership between Dhawan (66) and Kohli (48) yielded 97 in 103 balls before Mendis unleashed his mystery ball. Ind 132-2 in 27 overs.
Mendis gets the prized wicket of Kohli sneaking one past the outside of bat after changing ends to the astonishment of India's stand-in skipper. Ind 130-2 in 26.3 overs.
Virat Kohli b Mendis 48 (51b 4x4 1x6)
Thisara goes for a 13 as Kohli hits a boundary while Dhawan smashes him for a six over midwicket. Ind 128-1 in 26 overs.
Kohli slams the first six of the match rocking back and blasting Chathuranga over midwicket. Ind 115-1 iin 25 overs.
Kohli gets another boundary whipping Thisara off his pads. Ind 107-1 in 24 overs.
Dhawan completes his sixth ODI fifty and second against Sri Lanka off 68 balls. Ind 100-1 in 23 overs.
Dhawan finally gets on top of Mendis sweeping him beautifully to the square leg fence. Ind 81-1 in 18 overs.
Kohli survives being stumped managing to drag his foot back just in time after beaten by the second delivery from leg spinner Chathuranga. Ind 70-1 in 16.2 overs.
Mendis has come into the attack and Kohli pounces on a loose delivery to paddle it to the fine leg fence. Ind 69-1 in 16 overs.
Good over for India as Dhawan also gets into the act cutting Senanayake to the boundary. Ind 59-1 in 14 overs.
Kohli shows he is the batsman in form skipping out and driving Senanayake nonchalantly through the covers.
Kohli opens his account by glancing Senanayake to the fine leg fence. Ind 37-1 in 10 overs.
Rohit is stunned as he lunges forward and is adjudged leg before off Senanayake after being rapped on the front foot with TV replays showing it would have hit middle. Ind 33-1 in 9.2 overs.
Rohit Sharma lbw b Senanayake 13 (28b 1x4 0x6)
Mathews is leaving the field with a suspected groin strain after delivering two balls in his fourth over which is completed by Thisara Perera. Ind 33-0 in 9 overs.
Malinga bowls another excellent over rolling his wrists deceptively conceding just a single. Ind 26-0 in 7 overs.
Spin introduced early but Rohit slams a short delivery from Senanayake behind point for a boundary. Ind 25-0 in 25 overs.
Dhawan gets cracking getting the measure of Malinga punching him through the covers off consecutive balls. Ind 19-0 in 5 overs.
Dhawan finally hits the first boundary of the match in the fourth over steering Mathews between point and cover. Ind 8-0 in 4 overs.
Skipper Mathews brings himself on from the other end and bowls a maiden. Ind 1-0 in 2 overs.
No surprises as pace ace Lasith Malinga has been handed the new ball on what is expected to be another slow surface.
Sri Lanka have won the toss and put India into bat in Match 4 of the Asia Cup at the Khan Shaheb Osman Ali Stadium, Fatullah on Friday.
Both teams have one win under their with Sri Lanka defeating Pakistan 12 runs while India beat Afghanistan by six wickets.
Sri Lanka have opted to go with three spinners replacing Lakmal with Ajantha Mendis while India have bought in Stuart Binny for Varun Aaron.
India: Shikhar Dhawan, Rohit Sharma, Virat Kohli, Ambati Rayudu, Ajinkya Rahane, Dinesh Karthik, Stuart Binny, Ravindra Jadeja, Ravichandran Ashwin, Bhuvneshwar Kumar, Mohammed Shami
Sri Lanka: Kusal Perera, Lahiru Thirimanne, Kumar Sangakkara, Mahela Jayawardene, Dinesh Chandimal, Angelo Mathews, Chathuranga de Silva, Thisara Perera, Sachithra Senanayake, Lasith Malinga, Ajantha Mendis