Sebastian Vettel ended the second free practice session from the Autodromo Hermanos Rodriguez in first place, edging out Max Verstappen by just over one-tenth of a second.
Verstappen ended the FP1 session in second place with a similar gap to Lewis Hamilton, who topped morning practice for Mercedes.
However, the pace of the Silver Arrows failed to come to light in the afternoon, as Valtteri Bottas in fourth place was over six-tenths down on Vettel, who clocked a 1:16.607.
Alexander Albon failed to set a competitive time during the session, as he crashed on the exit of Turn 7, losing the rear of the car as he turned into the corner.
The Thai-British driver clouted the wall and sustained major damage to his front right suspension, putting him out of the session.
Charles Leclerc also found himself facing the wrong way twice throughout the session, losing the rear of his car at Turn 1 before spinning right at the end of the 90 minutes at Turn 8.
Leclerc was third on the times for Ferrari, but was almost half a second down on teammate Vettel. Lewis Hamilton failed to recapture his morning pace, and was almost a full second down in fifth place.
After displaying strong pace in the morning outing in Mexico City, Toro Rosso topped the midfield pack, as Daniil Kvyat and Pierre Gasly ended up sixth and seventh respectively.
However, Carlos Sainz, who was the quickest midfield driver after FP1, was less than a tenth behind Gasly in his McLaren.
Sainz's teammate Lando Norris rounded out the top ten, finishing with a lap time that was only marginally slower than Nico Hulkenberg, who was ninth in the timesheets.
Robert Kubica returned to the cockpit of the Williams FW42, after he gave up his drive in the morning to reserve driver Nicholas Latifi.
Local favourite Sergio Perez was 12th fastest in the session, setting a lap time that was four-thousandths of a second down on teammate Lance Stroll, who crashed in the morning.