Charles Leclerc resisted an intense attack from Lewis Hamilton and a late charge from Valtteri Bottas to win the Italian Grand Prix and earn back-to-back Formula 1 wins.
Leclerc fought single-handedly for victory at Ferrari's home race after team-mate Sebastian Vettel had a spin early on while running fourth.
Hamilton gave chase for more than 20 laps in the middle of the grand prix before Bottas took over Mercedes' attack at the end, but Leclerc kept both at bay to win again just seven days after claiming his maiden grand prix victory.
Leclerc had kept Hamilton at arm's length through the first stint but came under attack after stopping one lap later than his pursuer - and taking hard tyres to the Mercedes driver's mediums.
Hamilton's earlier stop brought him out within striking distance of Leclerc straight away and two engaged in an ultra-intense cat-and-mouse chase for more than 20 laps.
During that time, Hamilton got close enough to launch two serious attacks.
First, on lap 23 of the 53, Hamilton used a minor delay as Leclerc passed Nico Hulkenberg's Renault at Parabolica to force the youngster to defend into the first chicane - where Leclerc took to the run-off.
Leclerc defended again into the second chicane but moved back across to the right, made light contact with Hamilton and forced his rival onto the run-off.
Leclerc was given a black-and-white flag warning for that move, and was perhaps fortunate to get away with what Hamilton described as "dangerous" driving on lap 36.
A small lock-up from Leclerc sent him over the run-off at the first chicane and gave Hamilton a run out of the corner.
As Hamilton looked to the outside through Curva Grande, Leclerc jinked to the left to block his path - leaving Hamilton vexed.
Over the next few laps Hamilton remained in close proximity but failed to launch another attack before locking his front left into the first chicane at the start of lap 42.
Hamilton took to the escape road, allowing Bottas through into second after the Finn had crept up to the lead two with his long first stint giving him an eight-lap offset on fresh tyres.
Bottas picked up the chase, three seconds adrift of Leclerc, and almost got within DRS range with six laps to go before losing a bit of time in the final sector.
His best chance came three laps from the end when he got to just half a second behind Leclerc, but Bottas ran deep into the first corner and dropped back.
Bottas got within DRS range again on the final lap, then made a small mistake at the second chicane that ensured Leclerc won by 0.8 seconds.
Hamilton finished a distant third after pitting for fresh tyres to set the fastest lap and score a bonus point, meaning his championship advantage over Bottas stands at 63 points.
While Leclerc held on to win his first Italian GP as a Ferrari driver, Vettel had a miserable race and finished outside the points in 13th.
He ran fourth early on but spun after striking the kerb on the entrance to the Ascari chicane on lap six.
Vettel then rejoined the track while cars were flashing past and clipped the Racing Point of Lance Stroll, who was seventh, into a spin.
Stroll got going again but rejoined as Pierre Gasly was exiting Ascari - which forced the Toro Rosso driver through the gravel.
Vettel received a 10s stop-go penalty for his unsafe return to the track, the harshest possible penalty short of disqualification, while Stroll's actions were deemed slightly less severe and he was hit with a drivethrough.
In the absence of Vettel - and also Max Verstappen, who started at the back following an engine change and had his race compromised by a first lap clash - Daniel Ricciardo clinched Renault's best result of the season in fourth.
Ricciardo had fallen behind team-mate Hulkenberg in the early laps but quickly repassed the sister car and assumed fourth when Vettel spun.
He held a commanding advantage over Hulkenberg until the end of the race, while Hulkenberg - who had briefly passed Vettel on lap one - held onto fifth ahead of Red Bull's Alex Albon to give Renault a massive haul of points.
Albon had to regain ground after banging wheels with Carlos Sainz Jr and going through the Lesmo gravel, and receiving a 5s time penalty for cutting a corner when battling with Kevin Magnussen.
Behind Albon, Sergio Perez benefited from a well-timed virtual safety car around his pitstop window to finish seventh, despite starting 18th.
Verstappen made it back to eighth after stopping on lap one for a new front wing, having broken his when the field bunched up at the first corner.
Antonio Giovinazzi scored points in his home race in ninth, while Lando Norris completed the top 10 having started 16th.
Three drivers retired from the grand prix, two shortly after making their pitstops.
Carlos Sainz Jr lost a likely strong points finish when his McLaren's front right wheel was not attached properly at his stop.
Daniil Kvyat, also running well inside the top 10, pulled his smokey Toro Rosso to a halt exiting the first chicane after his own stop.
Magnussen was the final retiree. He had already dropped out of the points when he locked up at Turn 1 and took to the run-off and eventually stopped with a hydraulic problem.
|6||Alexander Albon||Red Bull/Honda||53||59.315s|
|7||Sergio Perez||Racing Point/Mercedes||53||1m13.802s|
|8||Max Verstappen||Red Bull/Honda||53||1m14.492s|
|9||Antonio Giovinazzi||Alfa Romeo/Ferrari||52||1 Lap|
|10||Lando Norris||McLaren/Renault||52||1 Lap|
|11||Pierre Gasly||Toro Rosso/Honda||52||1 Lap|
|12||Lance Stroll||Racing Point/Mercedes||52||1 Lap|
|13||Sebastian Vettel||Ferrari||52||1 Lap|
|14||George Russell||Williams/Mercedes||52||1 Lap|
|15||Kimi Raikkonen||Alfa Romeo/Ferrari||52||1 Lap|
|16||Romain Grosjean||Haas/Ferrari||52||1 Lap|
|17||Robert Kubica||Williams/Mercedes||51||2 Laps|
|-||Daniil Kvyat||Toro Rosso/Honda||29||Oil leak|
|-||Carlos Sainz Jr.||McLaren/Renault||27||Wheel|
|7||Carlos Sainz Jr.||58|