England were reeling on 84 for 5 at stumps on Day 2, 332 runs behind and needing 133 to avoid the follow-on, replying to India's first-innings 416.
Jasprit Bumrah blitzed England with the bat and then blew away their top order with the ball to put India in a strong position in the rescheduled fifth and final Test, at Edgbaston, on Saturday.
Only 38.5 overs could be played on the rain-hampered second day and Bumrah dominated much of it, first with the bat and then with the ball.
Thanks to his spectacular batting onslaught, England seamer Stuart Broad sent down Test cricket's most expensive over, conceding 35 runs in eight deliveries including a wide and a no-ball.
India's stand-in captain then wrecked England's top order with triple strikes and the hosts closed on 84/5, 332 runs behind and needing 133 to avoid follow-on, replying to India's first-innings 416.
Jonny Bairstow was batting on 12 while skipper Ben Stokes was yet to open his account, with England reeling from Bumrah's early strikes.
The seamer breached Alex Lees's (six) defence with a length delivery and had Zak Crawley (nine) and Ollie Pope (10) caught in the slips before rain returned to halt India's charge.
Mohammed Shami troubled Joe Root but was unlucky not to be rewarded for his effort.
Aware of the importance of Root's wicket, India wasted a review trying to get him lbw to a Shami delivery which replays confirmed would have sailed over the stumps.
Mohammed Siraj earned India the prize wicket with a rising delivery which Root wanted to cut but ended up being caught behind for 31.
Jack Leach walked out as the nightwatchman but lasted only five balls before Shami removed him caught behind.
He could have perished in Shami's previous over but Virat Kohli dropped him in the slip.
Earlier, after the touring side had resumed on 338/7, overnight batsman Ravindra Jadeja (104) completed his third Test century before falling to James Anderson who returned figures of 5/60.
Jadeja's 222-run stand with fellow centurion Rishabh Pant dragged India back into the contest after they had slumped to 98/5 on Friday.
England's hopes of restricting India to under 400 were snuffed out by Bumrah who smashed 31 not out off 16 balls.
Broad dismissed Mohammed Shami for his 550th Test wicket before the seamer was mauled by Bumrah, who is leading India after regular skipper Rohit Sharma tested positive for COVID-19.
India are 2-1 up in the series which could not be completed last year following COVID-19 cases in the India camp ahead of the final match at Old Trafford.