Vettel ended up just five-hundredths clear of team-mate Kimi Raikkonen, setting his benchmark 1m33.336s during a super-soft run midway through the hour-long session.
Hamilton wasted his opportunity to knock Vettel off top spot when he ran wide at the hairpin on his final super-soft run, having set the best first sector time of all and been just two-thousandths of a second slower than the Ferrari driver in the second.
Daniel Ricciardo led the early running, initially on softs before improving to a 1m35.647s using super-softs. This left him the best part of two seconds clear of Sergio Perez and Lance Stroll.
Raikkonen moved the benchmark into the 1m34s bracket right on the halfway point of the session with a 1m34.519s, despite complaining over the radio about a lack of front grip.
At almost the same time Sebastian Vettel made the move to the super-softs, taking more than a second out of Raikkonen's time to go fastest with a 1m33.336s.
Williams driver Felipe Massa also made gains on the softer rubber around the same time, jumping into third with a 1m35.092s, while Ricciardo improved to an identical time to the thousandth.
Valtteri Bottas, who lost his T-wing when it snapped off early in the session, made his move with 17 minutes to go, splitting the Ferraris with a 1m34.333s.
He was quickly displaced by team-mate Lewis Hamilton, who went second with a 1m34.093s.
But they were both shuffled back a spot several minutes later when Raikkonen restored the Ferrari one-two by improving to a 1m33.389s.
Hamilton then returned to the track with a few minutes to go to have one more crack at the Ferraris, but the error at the hairpin meant he only improved to a 1m33.879s.
This also gave Bottas the opportunity to sneak into third, jumping his team-mate with a 1m33.707s on his final run.
Massa was best of the rest in fifth after improving to a 1m34.773s, while Max Verstappen got ahead of Red Bull team-mate Ricciardo with a 1m34.946s set inside the last 10 minutes.
Lance Stroll and Jolyon Palmer were next in line, while Carlos Sainz was 10th quickest in the Toro Rosso.
All drivers set their best times on super-softs, except for Toro Rosso driver Daniil Kvyat in 15th place.
China GP Free Practice 3
|6||Max Verstappen||Red Bull/Renault||1m34.946s||1.610s||20|
|7||Daniel Ricciardo||Red Bull/Renault||1m35.092s||1.756s||23|
|10||Carlos Sainz||Toro Rosso/Renault||1m35.223s||1.887s||24|
|13||Sergio Perez||Force India/Mercedes||1m35.626s||2.290s||20|
|15||Daniil Kvyat||Toro Rosso/Renault||1m35.804s||2.468s||23|
|16||Esteban Ocon||Force India/Mercedes||1m35.811s||2.475s||24|