A superb 179-run stand from Joe Root and Moeen Ali left England in a strong position after day one of the first Test against India in Rajkot.
England's batsmen were badly exposed against subcontinental spin in the drawn series against Bangladesh and few predict them to triumph over five matches in India.
It looked as though their batting issues would surface once more as captain Alastair Cook (21), teenage debutant Haseeb Hameed (31) and Ben Duckett (13) fell in the morning session.
However, Root (124) - so often England's talisman - and Moeen (99 not out) withstood the attack from Ravichandran Ashwin (2-108) and Ravindra Jadeja (1-59), with Root anchoring the innings while Moeen rotated the strike well.
Root's contentious caught and bowled from Umesh Yadav (1-68) in the final session brought an end to the stand, but England reached stumps at 311-4.
India were guilty of several fielding errors early on, with England captain Cook twice put down by Ajinkya Rahane and Virat Kohli.
However, his charmed wicket went leg before to Jadeja - although replays showed the ball was missing leg stump.
Hameed, himself dropped by Murali Vijay, had looked in good nick on his bow and found the boundary on six occasions, but was trapped lbw by Ashwin - who quickly snared Duckett.
Root halted India's momentum, though, and batted brilliantly in favourable day-one conditions, including a couple of masterful drives in the 23rd over.
Ashwin had a long spell either side of lunch, but found Root and Moeen in unwavering, patient form, while not even a switch to pace bowlers Mohammed Shami (0-31) - who received regular treatment on a hamstring injury sustained late in the second session - and Yadav could break the partnership.
Root survived an lbw appeal shortly before tea and brought up his hundred with a flip over the shoulder for two, and looked to kick on with a huge six back over the head of Jadeja.
The Yorkshireman was undone in the 81st over, though. Yadav seemingly spilled the ball when trying to celebrate, but it was decided he had it under enough control for Root to be given out.
Moeen wafted at one from Yadav in a rare error, before playing a stunning drive to the boundary, while Ben Stokes (19no) was typically attack minded and launched Ashwin for six.
Despite squeezing in a couple of extra overs, Moeen was stuck on 99 overnight and will resume on day two alongside Stokes, with India needing to turn the tide.