Fernando Alonso put Ferrari in second place, ahead of Mark Webber and an impressive run from Toro Rosso's Jean-Eric Vergne.
Much of the session had been conducted on Pirelli's hard compound, but with 15 minutes left on the clock the entire field pitted to bolt on the medium option.
Force India's Adrian Sutil was the first man to set a time on the new compound and instantly went quickest, but his time was soon eclipsed by Alonso's 1m48.432s.
That stood as the session's benchmark until the final two minutes, when Vettel found just over one tenth of a second to keep Red Bull in the ascendancy.
Felipe Massa and Jenson Button rounded out the top six, while Sauber's Esteban Gutierrez was a surprise seventh, fractions ahead of the lead Lotus of Romain Grosjean.
That meant no ostensible overnight cure to Mercedes' struggles, with Nico Rosberg ninth and Lewis Hamilton 12th, more than 0.7s down on Vettel.
As had been the case in Friday's opening practice, drivers had the early challenge of coping with a circuit that was damp in patches and completely dry in others.
That meant several moments of wild understeer or oversteer - the latter effect almost pitching Paul di Resta and Felipe Massa into the Turn 9 barriers early on - and a spin for Lewis Hamilton at the final chicane.
In such conditions it was Jean-Eric Vergne who was the early pacesetter, working his way down to a 1m49.479s on Pirelli's hard compound.
That put the Frenchman almost a quarter of a second clear and disrupted what had been an incredibly tight fight at the top of the timesheets, with the top seven at one stage covered by less than two tenths of a second.
Kimi Raikkonen had held top spot until Vergne's flyer, but struggled to translate his form on the medium compound and wound up 10th overall.
Bottas, who like Raikkonen had enjoyed early spells at the head of the field, sank to 14th.