India spinner Kuldeep Yadav took five wickets including Zak Crawley for 79 to leave England 194-8 at tea, in the fifth and final Test on Thursday.
The tourists collapsed from 175-3 after electing to bat in their bid for a consolation win at the picturesque Dharamsala stadium, overlooked by snow-capped Himalayan mountains.
Wicketkeeper-batsman Ben Foakes, on eight, and Shoaib Bashir, on five, were batting at the break after England lost five wickets for eight runs in seven overs.
Yadav stood out with his left-arm wrist spin as he went past 50 Test wickets.
Crawley, who raised his fourth half-century of the series in the first session, survived a few reprieves — before being bowled by Yadav on a delivery that turned in sharply to hit the stumps.
Jonny Bairstow joined Joe Root at the crease in his landmark 100th Test and looked solid after he smashed Yadav for two sixes.
Bairstow went past 6,000 Test runs before Yadav got him caught behind off a googly, which took the edge into the wicketkeeper’s gloves, upheld on after a wasted England review.
Ravindra Jadeja struck four balls later in the next over to trap Root lbw for 26 and the former captain burned another review.
England’s last review was lost after skipper Ben Stokes was given out lbw off Yadav, with the confirmation that the ball would hit leg stump giving him his fifth wicket.
Off-spinner Ravichandran Ashwin sent back Tom Hartley and then had Mark Wood caught two balls later.
In the first session the openers had taken time to settle in, but Crawley soon found his groove, hitting 11 fours and a six. He put on 64 runs with Ben Duckett, who made 27.
Yadav struck in his first over as Duckett’s slog got a leading edge, with Shubman Gill running backwards to take a diving catch.
The same bowler then had Ollie Pope stumped for 11 on the stroke of lunch.
India, led by Rohit Sharma, lost the opening Test but hit back to take an unbeatable 3-1 lead in the five-match series.