The Repsol Honda rider crossed the line four seconds ahead of championship leader Jorge Lorenzo, with Italian Andrea Dovizioso representing the host nation on the podium with a third-place finish.
But neither of them ever looked like touching Pedrosa, who made it into the first turn ahead of the field and quickly pulled away.
He set a new course record on lap five as he showed some blistering pace, and he opened up a lead of almost eight seconds.
Behind him, Dovizioso enjoyed an excellent start from the second row to keep pace with Lorenzo throughout the race in a close battle.
But the front three had quickly pulled away from the rest of the pack, leaving Marco Melandri, who had shot up from 14th on the grid, the battle it out with Randy De Puniet, Casey Stoner and Ben Spies for the rest of the top seven places behind them.
As the end of the race neared, it was clear that nobody was going to be able to challenge Pedrosa, who was able to ease towards the finish.
The battle between Lorenzo and Dovizioso was much closer, but the Fiat Yamaha man was able to eke out a small advantage and hang on through the final laps.
Further back, Stoner made his move to secure fourth ahead of Melandri and De Puniet.
Spies settled for seventh, while rookie Alex Espargaro finished seventh.
The result leaves Lorenzo on 90 points, still well clear of Pedrosa who has 65, and the injured Valentino Rossi, who has 61.
Dovizioso has moved up to fourth place with 58 points.