Stefan Bradl profited from a late mistake from Andrea Iannone to take victory at Estoril, and move above the Italian into the championship lead. Iannone produced another stunning comeback ride from 14th on the grid to lead the Grand Prix with four laps to go, but a fall at the chicane handed the lead to Bradl.
The German had led the race from the start but soon came under pressure from Thomas Luthi and Yuki Takahashi. Luthi slipstreamed past Bradl at the start of lap four but that would be the last time he appeared on the pit straight after the Swiss rider crashed at the Parabolica.
Bradl retook the lead while Kenan Sofuoglu stormed through the field up to second ahead of Simon, Takahashi, Dominique Aegerter and Jules Cluzel.
Behind them, Scott Redding was running a solid seventh but his race was cruelly ended on lap eight as Marc Marquez slid into the side of him. Both riders remain pointless after three rounds of the season.
By half distance, Bradl had managed to establish a one second lead while Simon and Takahashi made their way back past Sofuoglu, but the dangerous Iannone was beginning to close on them after overtaking the Turkish rider for fourth.
On lap 15, Iannone outbraked Takahashi for third but ran wide when attempting a similar move on Simon two laps later. While this was going on, the pair of them were closing in on Bradl, whose lead was now less than a second.
Iannone made the move stick on Simon on lap 20 and immediately took the fight to Bradl, but no sooner had he taken the lead, Iannone slid out of contention at the tight chicane (turn nine) to leave Bradl and Simon to dispute the victory.
Despite his best efforts, Simon couldn't get close enough to challenge Bradl and crossed the finish line 0.147s away from what would have been his maiden victory.
After the tragic loss of his brother last weekend, Takahashi took an emotional third for Gresini Racing while Dominique Aegerter finished fourth after Sofuoglu also crashed out.
Simone Corsi was close behind in fifth while Pol Espagaro won a fierce battle for sixth, with Randy Krummenacher, Alex Baldolini and Mike Di Meglio right on his tail. This group all benefited from Iannone's crash and the Italian was forced to settle for 13th and three championship points.
Bradley Smith had a frustrating afternoon after going fastest in morning warm-up. The Briton made a good start from 15th on the grid and was up into the top ten by lap four. The Tech 3 rider seemed to be struggling with his tyres as he relentlessly dropped down the order. In the end, he was forced to pit and was classified in 29th, two laps down.
Kev Coghlan entered the weekend carrying injuries following a motocross accident in the four week break after Jerez. The Scotsman had qualified in 37th position but was advised by doctors not to race.