Pakistan players celebrate after Mohammad Hafeez removed India opener Shikhar Dhawan for just 10 in the third over of the day.
Ravindra Jadeja hit a timely and quickfire 51* to help India get nearer to 250.
Rohit Sharma tried to rebuild India innings with a quickfire 56 but played one shot too many against debutant Mohammad Talha.
Ambati Rayudu contributed with a crucial 58-run knock, his second half-century in ODI cricket.
Umar Gul celebrates the dismissal of in-form India skipper Virat Kohli.
Ahmad Shahzad, along with fellow opener Sharjeel Khan, provided Pakistan a 71-run opening stand. Shahzad made 42 off 44 balls.
Legspinner Amit Mishra bowled a brilliant spell of 2 for 28 to bring India back into the game.
Pakistan skipper Misbah-ul-Haq fell prey to an ugly mix-up with Mohammad Hafeez and was run out for 1.
Mohammad Hafeez held the Pakistan chase together with his 75.
Shahid Afridi hit a gamechanging 34 off 18 balls, including two sixes in the last over off R Ashwin to win the game for Pakistan by one wicket.