Chasing a mammoth target of 382 runs, England fell 15 runs short in the second One-day International (ODI) at Barabati stadium here on Thursday to give India an unassailable lead of 2-0 in the three-match series.
England skipper Eoin Morgan led the fightback with a blistering 81-ball 102 but he failed to take his team home. Opener Jason Roy (82), Joe Root (54) and Moeen Ali (55) also contributed with half centuries but none of them stayed at the crease till the end.
Morgan almost took the game away from India's grasp until pacer Jasprit Bumrah's brilliant throw at the non-striker's end jolted the visitors' chase in the 49th over, with 28 runs needed from the last nine balls.
England recovered from the early jolt of opener Alex Hales's (14) wicket with Roy and Root setting the platform with a 100-run stand for the second wicket before off-spinner Ravichandran Ashwin sent back Root in his very first over of the match.
Roy, however, made full use of the life he got on 44, when Jasprit Bumrah dropped a finger-tip chance at midwicket off all-rounder Hardik Pandya and went on to bring up his half century off 52 deliveries.
Morgan then joined Roy in the middle and the duo added 42 runs for the third wicket before left-arm spinner Ravindra Jadeja left his stumps in a mess with a straight ball. Roy's hurricane innings came off 73 deliveries and was laced with nine boundaries and two sixes.
Ashwin then jolted England with two quick wickets of all-rounder Ben Stokes (1) and wicketkeeper-batsman Jos Buttler (10) to reduce the visitors to 206/5.
With the asking rate mounting to more than 15 runs per over, England were looking down the barrel before southpaw Moeen joined the skipper to add some spice to the chase.
Moeen, who got two lives -- on 2 when stumper Mahendra Singh Dhoni missed a run-out chance and then on 37 when Jadeja dropped him at long-on off Bhuvneshwar Kumar -- added 93 runs for the sixth wicket with his captain as the 40,000 crowd at the Barabati went into a pin drop silence.
Kumar, however, avenged the dropped chance immediately in his next over when he ended the left-hander's 43-ball vigil by inducing a bottom edge into the off-stump.
Bumrah immediately removed next man Chris Woakes (5) to put the visitors into more trouble.
Thereafter, Morgan and Liam Plunkett (26 not out) added another 50 runs for the eighth wicket before the captain was shown the door by Bumrah's quick reflexes off his own follow through. Morgan's knock was laced with six hits to the fence and five over it.
With just more than one over left, pacer David Willey (5 not out) could do very little with Plunkett to get the visitors over the line.
For India, Ashwin was the pick of the bowlers with figures of 3/65 while Bumrah took 2/81. Bhuvneshwar Kumar and Jadeja chipped in with one wicket apiece.
Earlier in the first inning, riding on spectacular performances by Man-of-the-Match Yuvraj Singh and MS Dhoni, India finished with 381/6.
The duo added 256 runs between them in 38.2 overs to bring the Indian innings back on track after England pacer Chris Woakes had reduced the hosts to 25/3 by the fifth over.
Put to bat first after losing the toss, India had a jittery start as it lost three wickets with just 25 runs on the scoreboard.
Yuvraj, who returned to the national side on the back of some prolific scores for Punjab in the Ranji Trophy, looked in ominous touch as he went on to amass his career-best score of 150 runs in only 127 deliveries, comprising 21 fours and three huge sixes.
Yuvraj, who surpassed his best score of 139 runs, slammed his first ODI century in six years, the last coming way back in 2011 during the World Cup.
Returning to the side after a three-year hiatus, the 35-year-old left-hander consumed 98 balls to bring up his career's 14th ODI ton and also eclipsed his own record of 138 to become the highest run-getter at this ground. He also became the first Indian player to score a 150 against England in ODIs.
Coming in to bat with India reeling at 25/3, the southpaw took his time in the middle before forging a 100-run stand with Dhoni off 118 balls.
He also became the highest Indian run-getter against England surpassing Sachin Tendulkar's record. He also crossed the landmark of 150 sixes in his ODI career.
Dhoni, playing his second ODI as non-captain after leading the team for nearly a decade, started slowly but went on to score a 100 off 106 balls.
After surviving a dropped chance even before reaching his 50 off 68 balls, Dhoni kept on frustrating the English bowlers, bludgeoning six massive sixes and 10 fours in his 122-ball 134 before falling to pacer Liam Plunkett in the 48th over of the innings.
During his innings, Dhoni also became the first Indian batsman to hit 200 ODI sixes.
The fall of wickets of Dhoni and Yuvraj, however, did not stop incoming Kedar Jadhav (22 off 10 balls), Hardik Pandya (19 not out off 9) and Ravindra Jadeja (16 not out off 8) to play their stokes and push the total to a massive 381/6.
Woakes, who wrecked the Indian innings in the very beginning ended up with a figure of 60 for 4 in his quota of 10 overs.
Liam Plunkett, although bagged two wickets gave away 91 runs in his 10 overs.
With India taking an unassailable 2-0 lead in the series, both the sides will now move to Kolkata, where the third and final ODI will be played at the Eden Gardens on January 22.