Barrichello started on the third spot from the starting line led by McLaren's Lewis Hamilton and Heikki Kovalainen. He moved his way up with two quick pit stops during the race.
The defining moment came for Barrichello on Lap 38 when Hamilton's pit stop took roughly five seconds longer than it should have, giving the Brazilian an advantage on track.
Barrichello kept his position despite having to go back to the pits on Lap 42 as his stop took only six seconds.
He widened the gap from Hamilton by as much as six seconds in the following laps as he moved closer to his tenth career victory.
"I wanted it so badly," Barrichello said and gave the TV camera lens a big kiss just before going up the podium for the ceremonial playing of the winner's national anthem and the traditional champagne shower. Barrichello last stood on top of the podium at the 2004 Chinese Grand Prix when he was still with the Ferrari team.
Hamilton, who started the European Grand Prix on pole position, stood second only to Barrichello at the end of the race while Ferrari's Kimi Raikkonen climbed three spots in 57 laps as he ended on the third podium slot.
Barrichello's victory brings him up to second place in the Driver's Championship board with 54 points. Hamilton and Raikkonen both climbed two spots with 27 and 24 points, respectively. The top spot continued to belong to Jenson Button despite earning only two points on the seventh spot at the European GP.
Here is the complete result of the 2009 European Grand Prix:
1. Rubens Barrichello (Brawn GP)
2. Lewis Hamilton (McLaren)
3. Kimi Raikkonen (Ferrari)
4. Heiki Kovalainent (McLaren)
5. Nico Rosberg (Williams)
6. Fernando Alonso (Renault)
7. Jenson Button (Brawn GP)
8. Robert Kubica (BMW Sauber)
9. Mark Webber (Red Bull)
10. Adrian Sutil (Force India)
11. Nick Heidfeld (BMW Sauber)
12. Giancarlo Fisichella (Force India)
13. Jarno Trulli (Toyota)
14. Timo Glock (Toyota)
15. Romain Grosjean (Renault)
16. Jaime Alguersuari (Red Bull)
17. Luca Badoer (Ferrari)
18. Kazuki Nakajima (Williams)
Ret Sebastien Buemi (Toro Rosso)
Ret Sebastian Vettel (Red Bull)