The lead changed hands between Barrichello and Schumacher several times during the race.
Barrichello even managed to briefly challenge his team leader after his final pit stop, forcing Schumacher to aggressively shut the door with 18 laps to go. But he then backed off for a comfortable second place.
"I really had a car to win the race," Barrichello said. "So that is why I am a little bit sorry, despite the great result."
Earlier in the race Michael Schumacher saw his brother Ralf taken to hospital after having a high-speed crash on lap 10.
The BMW driver is now recovering and it's hoped he'll be fit for the French Grand Prix.