Moeen Ali took the prize wicket of India captain Virat Kohli to give England's push for victory in the fourth Test a huge boost at a sun-drenched Southampton on Sunday.
Kohli fell for 58 a few minutes before tea on the fourth day, with India 126 for four at the interval -- still needing a further 119 runs to reach their victory target of 245.
Ajinkya Rahane was 44 not out, with Hardik Pandya unbeaten on nought.
It had seemed as if England, bidding to go an unassailable 3-1 up in a five-match series against India, the world's top-ranked Test side, had missed a huge chance when Alastair Cook dropped Kohli off Ali at short leg.
But the very next ball saw Kohli get a thin glove to the off-spinner and this time Cook made no mistake.
It was the end a fourth-wicket stand of 101 in more than 42 overs between Kohli and vice-captain Rahane that had revived India from the depths of 22 for three.
Kohli reviewed, but to no avail, before appearing to exchange angry words with Stuart Broad.
The scale of India's task was evident from the fact they had only three times before scored 200 or more in the fourth innings to win a Test match outside of Asia.
And for all that England had suffered 203-run thrashing by India at Trent Bridge last week, it was still a decade since they had last lost successive home Tests following back-to-back defeats by South Africa.
After they were bowled out for 271, England made early inroads into India's top order.
KL Rahul was bowled for a duck by a Broad delivery that kept cruelly low.
James Anderson, surprisingly, wicketless in an India first innings of 273 that featured Cheteshwar Pujara's excellent 132 not out, then struck twice.
He had Pujara lbw for just five on Sunday and his next over saw Shikhar Dhawan (17) well caught in the gully by Ben Stokes.
- Kohli survives review -
That double strike left paceman Anderson on 559 Test wickets just four behind retired Australia great Glenn McGrath's mark of 563, the most taken in Tests by any fast bowler.
India were again looking for another major innings from Kohli, who had already scored two hundreds this series and would pass 500 runs for the campaign during Sunday's innings.
England thought they had Kohli lbw for nine to Ali.
But after England's review of an original not out decision from Sri Lanka's Kumar Dharmasena, third umpire Joel Wilson ruled there had been an inside edge.
It was a desperately tight call but there was no debate when Rahane (12), was reprieved after falling lbw to left-arm medium-pacer Sam Curran, with replays revealing the ball had struck him outside off stump.
At lunch, India were 46 for three with Kohli 10 not out and Rahane unbeaten on 13.
Kohli had moved on to 15 when he survived another huge lbw appeal from Ali.
Although he looked out, with the ball striking him low down and in front of the stumps, Dharmasena's decision was upheld on review because the ball had pitched outside off stump with the batsman playing a shot.
Kohli went to fifty with just a third four in 114 balls when he clipped Anderson off his pads through square leg.
Earlier India needed just 19 minutes to dismiss England after they resumed on 260 for eight.
Mohammed Shami (four for 57) had Broad caught behind for a golden duck off Sunday's first ball before Curran was run out for 46.