Former champions India endured a scare from fearless Afghanistan before recording a 23-run win in the World Twenty20 in Colombo on Wednesday.
India, sent in to bat, took advantage of their rivals' butter-fingered display to recover from a bad start and post 159-5, with Virat Kohli top-scoring with 50 off 38 balls.
The Afghans, batting with abandon, raced to a comfortable 75-2 in the 12th over before a late collapse saw the non-Test side being bowled out for 136 with three balls to spare.
Mohammad Nabi was the star batsman with an aggressive 31 off 17 balls with two boundaries and as many sixes, while Karim Sadiq made 26 and skipper Nawroz Mangal chipped in with 22.
Seamer Lakshmipathy Balaji and left-arm spinner Yuvraj Singh claimed three wickets each and off-spinner Ravichandran Ashwin took two, but India were fortunate to emerge unscathed from the group A match.
The Afghans continued to attack till the end, but the loss of regular wickets cost them an unlikely win.
Tall left-arm seamer Shapoor Zardan gave the Afghans a superb start when he removed openers Gautam Gambhir and Virender Sehwag by the fifth over with only 22 runs on the board.
But Afghanistan, playing their second World Twenty20, were let down by a shoddy display in the field, dropping four catches, two of them return catches by Mohammad Nabi.
Yuvraj, who opened his account with a six, put on 46 for the third wicket with Kohli before he was caught at third-man off spinner Karim Sadiq.
Skipper Mahendra Singh Dhoni hit a four and six off the final two deliveries to carry India past the 150-run mark.
India play defending champions England next in Colombo on Sunday.
Afghanistan await England at the same venue on Friday.
The top two teams from the group will advance to the Super Eights round.