The Ferrari driver and pre-event championship leader picked up his form from FP1 by also running to the top in the second of the hour-long Friday practice sessions at Barcelona.
Leclerc ran clear on his soft Pirelli C3 tyre qualifying run to 1m19.670s.
That found 0.16s over his benchmark effort from FP1, plus closed to within 0.6s of Hamilton's pre-season test-topping time at the venue in late February set on the fastest C5 compound rubber.
That moved Leclerc 0.117s clear of Russell, the Mercedes driver having set the pace during FP2 last time out for the inaugural Miami Grand Prix.
Hamilton was a late adopter of the soft tyre and ran particularly well in the final part of the second sector to land the third-fastest effort - albeit a further 0.09s shy of his teammate.
Meanwhile, ahead of his home race, Carlos Sainz guided the second Ferrari F1-75 to fourth ahead of defending champion Max Verstappen.
Alexander Albon, Mick Schumacher, both Aston Martins and Esteban Ocon were the first drivers to hit the track in FP2 as the field stuck initially to the medium and hard compound tyre.
Sergio Perez and Albon also had their first run of the weekend after missing FP1 as Formula 2 race winner Juri Vips (Red Bull) and Formula E champion Nyck de Vries (Williams) conducted their first GP weekend practice sessions.
Similarly, Zhou Guanyu returned to the cockpit of the Alfa Romeo having made way for Robert Kubica in first practice.
Verstappen had been the first driver to set a fairly representative lap time on medium rubber as he and Sainz dropped below the 1m21s threshold ahead of Leclerc and the Mercedes.
But after only 11 minutes the session was interrupted by a virtual safety car.
That intervention was required when the Alfa Romeo of Valtteri Bottas, running sixth at the time, expired on the home straight after the Finn had completed only three laps.
A puff of smoke from the rear was matched by the engine seeming to die promptly as Bottas pulled up on the edge of the track at the exit of Turn 1.
After the three minutes of the VSC, the other notable incidences hit Albon and Lando Norris as both ran wide out of the high-speed Turn 9 right-hander.
That left them to glance over the outside kerb, kick up gravel and let sparks fly.
Both drivers anticipated damage to the floor of their ground-effect machines but while Albon continued in the session, Norris was forced back into the McLaren garage for the remainder of FP2 having completed only six laps.
Albon and Sainz also remain under investigation by the stewards after a close call between the pair at Turn 2.
After 21 minutes, the switch to soft tyres and the halo qualifying runs arrived with Vettel moving to first in the heavily updated and controversial Aston Martin AMR22.
His 1m20.703 - then quickest by 0.23s - was soon dislodged by Perez, despite the Red Bull driver shedding some pace due to traffic in Turn 10.
Verstappen then buzzed the timing line with his 1m20.006s, finding a huge 0.7s margin at the time.
He would remain the fastest driver through the first and final sectors but fell back during the middle part of the lap.
Then Sainz, the Mercedes and Leclerc set the ultimate times to lead FP2.
It was less rosy for Leclerc on his late medium-tyre race run, however, as he dropped several tenths per lap to Verstappen as he complained about tyre behaviour and degradation.
Fernando Alonso guided his Alpine to sixth in front of his home crowd, while Perez and Vettel slid to seventh and eighth ahead of Esteban Ocon and Mick Schumacher.
Pierre Gasly was the first driver to miss out on the top 10, the AlphaTauri pipping the Haas of Kevin Magnussen and Lance Stroll.
Yuki Tsunoda was 14th ahead of Daniel Ricciardo to complete a trying afternoon for McLaren, while Bottas' very early bath left him in 16th ahead of stablemate Zhou.
Norris rounded out the times behind the two Williams, Albon pipping Nicholas Latifi.
Cla | Driver | Chassis | Laps | Time | Gap | |
---|---|---|---|---|---|---|
1 | Charles Leclerc | Ferrari | 29 | 1'19.670 | ||
2 | George Russell | Mercedes | 27 | 1'19.787 | 0.117 | |
3 | Lewis Hamilton | Mercedes | 26 | 1'19.874 | 0.204 | |
4 | Carlos Sainz | Ferrari | 31 | 1'19.990 | 0.320 | |
5 | Max Verstappen | Red Bull | 27 | 1'20.006 | 0.336 | |
6 | Fernando Alonso | Alpine | 26 | 1'20.203 | 0.533 | |
7 | Sergio Perez | Red Bull | 30 | 1'20.632 | 0.962 | |
8 | Sebastian Vettel | Aston Martin | 31 | 1'20.703 | 1.033 | |
9 | Esteban Ocon | Alpine | 27 | 1'20.745 | 1.075 | |
10 | Mick Schumacher | Haas | 25 | 1'20.757 | 1.087 | |
11 | Pierre Gasly | AlphaTauri | 28 | 1'20.917 | 1.247 | |
12 | Kevin Magnussen | Haas | 24 | 1'21.013 | 1.343 | |
13 | Lance Stroll | Aston Martin | 32 | 1'21.249 | 1.579 | |
14 | Yuki Tsunoda | AlphaTauri | 29 | 1'21.285 | 1.615 | |
15 | Daniel Ricciardo | McLaren | 22 | 1'21.385 | 1.715 | |
16 | Valtteri Bottas | Alfa Romeo | 3 | 1'21.828 | 2.158 | |
17 | Zhou Guanyu | Alfa Romeo | 30 | 1'21.866 | 2.196 | |
18 | Alex Albon | Williams | 31 | 1'22.319 | 2.649 | |
19 | Nicholas Latifi | Williams | 25 | 1'23.197 | 3.527 | |
20 | Lando Norris | McLaren | 6 | 1'23.388 | 3.718 | |
View full results |