The Brazilian
started on pole but had to weave his way to the front after being
forced to make three stop in damp conditions in Monza.
Ferrari team-mate
Schumacher also poured on the pace as he battled back from an early
spin to clinch second.
Britain's Jenson
Button took third and David Coulthard was sixth.
Button had dominated
the middle part of the race with another display of solid driving
but his BAR could not match the relentless pace of the Ferraris.
There was some
good news for BAR as Button's team-mate Takuma Sato held on to fourth,
which means the team jumped into second place in the constructors'
championships ahead of Renault.
The Ferrari
team appeared to make a bad start in front of their enthusiastic
home fans in Monza.
Barrichello
had chosen to race on intermediate tyres after heavy rain had left
conditions dangerously damp while Schumacher had opted for dry tyres.
But the seven-time
world champion spun on lap two and found himself sliding back to
15th spot.
Barrichello
also lost ground on the fifth lap when he decided to go into the
pits and switch to tyres more suited to the drying track.
The two Ferraris
had to pick their way through the field while Button, Renault's
Fernando Alonso and Juan Pablo Montoya in his Williams fought out
a close battle for the lead.
But as Barrichello's
car began to drink its heavy fuel load he snatched the lead from
Button while Schumacher also began to pour on the pace.
The German recorded
the fastest lap of the race (lap 34) in one minute, 21.535 seconds.
Alonso dropped
out of contention, surrendering his third spot, when his Renault
spun into the gravel on lap 41.
Then Schumacher
rounded Button on the straight to take second, allowing Barrichello
to rejoin the race, after his third stop, in first place.
The Ferrari
duo continued their surge for the line to complete their eighth
one-two of the season.
Coulthard and
Pizzonia's duel for sixth spot provided the best battle down the
field in the closing stages of the Italian race.
The Briton held
off Pizzonia, who retained his place as Ralf Schumacher's stand-in,
despite a tangle on the penultimate lap.
Gianmaria Bruni
was lucky to escape a fire when he brought his Minardi in for his
second pit stop.
The
Italian was trapped in his car when it set alight during the re-fuelling
process and had to retire from the race, though he was unhurt.