Viñales had a good start and rode to fourth in the midst of a chaotic first turn. He was followed by fellow Yamaha man Franco Morbidelli and they had a bit of a tug of war between them for fourth place, but the Factory rider had the early race pace to get away. He started to follow his team-mate and caught up and swiftly passed him on lap 7.
The Spaniard was now in third place and had a 2.888s gap to close, but a scrap between leaders Álex Rins and Marc Marquez meant that the number-12 rider was able to make up time. He was inching closer and in the last two laps he was in contention. The gap was down to about half a second and Viñales was giving it his all but was unable to put in a move. He crossed the finish line in third place, 0.620s from first.
Rossi had a strong start and maintained his second position in the first corner and across the finish line for the first time, but soon he had to let Rins pass. He wasn‘t able to match the pace of the front-runners due to a lack of grip, but characteristically kept his head down to bring home as many points as possible.
When Viñales passed him on lap 7, the Doctor tucked in behind in an effort to bridge the gap to the race leaders. However, he was unable to keep up as his rear tyre started to drop and had to push 100% to manage the gap to Morbidelli in fifth. Concentrating fully on defending his position in the latter stages of the race, Rossi finished in fourth place, 11.439s from the race leader.
Today's third place sees Viñales take over fifth in the championship standings from Rossi again, with two points between them. Yamaha remains third in the constructor standings, and Monster Energy Yamaha MotoGP also stays in third in the team classification.
Viñales and Rossi will now concentrate on the coming two-day test starting next Wednesday at Misano, before they head for the Misano World Circuit Marco Simoncelli for the Gran Premio Octo di San Marino e della Riviera di Rimini, held from September 13-15.