Report - Rossi wins in San Marino
Valentino Rossi produced a dominant home victory at the San Marino MotoGP to extend his title lead to 30 points.
The Yamaha rider saw Dani Pedrosa get off to a flying start and take the early lead, but Rossi bided his time before making his move on lap eight.
Spain's Jorge Lorenzo, Rossi's nearest challenger in the championship, also passed Pedrosa but was unable to mount a serious challenge to his team-mate.
Rossi gradually extended his lead to win by 2.416 seconds from Lorenzo.
Honda rider Pedrosa took third place with Britain's James Toseland finishing in 10th place.
Lorenzo narrowly escaped a crash on the first lap when Alex de Angelis attempted a move that ended both Colin Edwards' and Nicky Hayden's race.
The Spaniard was made to pay for being unable to pass his compatriot Pedrosa in the middle stage of the race.
Afterwards he told BBC Sport: "After my bad start on the second corner, when I almost clashed with De Angelis, I pushed as much as I could.
Rossi hails 'perfect' weekend
"I overtook Dani but he [Rossi] was too far forward, but he's the number one this weekend because he's been the fastest in every practice."
After crashing out in the last race in Indianapolis, Rossi secured his sixth victory of the season. With four races to go, Rossi believes the win could be a crucial one as he looks to win a ninth world title.
He said: "It was not easy, in the beginning I had a bad start but I was able to come back on to the pace and it was a perfect race. The people were very amazing - there was a lot of people and it was an important victory."
Rossi deserved victory - Lorenzo
Pedrosa moved above Casey Stoner - who is missing with a virus - and into third place but he admitted he struggled to keep pace with the front two once again.
"It seems normal now but I'm happy because at the end I had a lot of luck as my bike was misfiring on some corners," he said. "Today Rossi and Lorenzo were faster on every corner so it was just good for me to finish third."
Julian Simon of Spain won the 125cc with Britain's Bradley Smith finishing third, while Hector Barbera won the 250cc.
Tempers flare in 125cc race
San Marino MotoGP result:
1 Valentino Rossi (Italy) Yamaha 44mins 32.882secs
2 Jorge Lorenzo (Spain) Yamaha 44:35.298
3 Dani Pedrosa (Spain) Honda 44:45.282
4 Andrea Dovizioso (Italy) Honda 44:59.212
5 Loris Capirossi (Italy) Suzuki 44:59.421
6 Toni Elias (Spain) Honda 45:01.168
7 Mika Kallio (Finland) Ducati 45:03.066
8 Marco Melandri (Italy) Kawasaki 45:04.639
9 Chris Vermeulen (Australia) Suzuki 45:04.791
10 James Toseland (Britain) Yamaha 45:11.229
11 Aleix Espargaro (Spain) Ducati 45:19.555
12 Randy de Puniet (France) Honda 45:24.923
13 Niccolo Canepa (Italy) Ducati 45:36.080
14 Gabor Talmacsi (Hungary) Honda 45:55.229
1 V Rossi 237 points
2 J Lorenzo 207
3 D Pedrosa 157
4 C Stoner 150
5 A Dovizioso 133
6 C Edwards 123
7 L Capirossi 97
8 A de Angelis 88
9 R de Puniet 88
10 M Meldandri 87
11 C Vermeulen 84
12 T Elias 80
13 J Toseland 78
14 N Hayden 73
15 M Kallio 51
16 N Canepa 35
17 S Gibernau 12
18 G Talmacsi 12
19 Y Takahashi 9
20 A Espargaro 8
125cc race result:
1 Julian Simon (Spain) Aprilia 40mins 15.301 secs
2 Nicolas Terol (Spain) Aprilia 40:15.874
3 Bradley Smith (Britain) Aprilia 40:20.775
4 Marc Marquez (Spain) KTM 40:24.679
5 Sandro Cortese (Germany) Derbi 40:24.966
1 J Simon (Spn) Aprilia 210.0 points
2 N Terol (Spn) Aprilia 152.5
3 B Smith (GB) Aprilia 147.5
4 S Gadea (Spa) Aprilia 112.0
5 A Iannone (Fra) Aprilia 109.5
250cc race result:
1 Hector Barbera (Spain) Aprilia 43 mins 23.353 secs
2 Mattia Pasini (Italy) Aprilia 43:23.393
3 Alvaro Bautista (Spain) Aprilia 43:25.044
4 Hiroshi Aoyama (Japan) Honda 43:25.050
5 Mike Di Meglio (France) Aprilia 43:25.274
1 H Aoyama 205
2 A Bautista 192
3 M Simoncelli 165
4 H Barbera 158
5 M Pasini 120