World champion Marc Marquez clinched his 12th MotoGP victory of the season in Sunday's final race in Valencia ahead of French rookie Fabio Quartararo.
Marquez, who secured his sixth premier category title last month, finished over a second clear of pole-sitter Quartararo who came second for the fifth time in his debut campaign.
The Spaniard made a poor start from second place on the grid but steadily picked off his rivals one by one to win at Valencia for just the second time in his career.
"It's been a difficult weekend because we've tried new things," said Marquez. "It's a perfect season, which will be difficult to repeat."
Three-time former MotoGP champion Jorge Lorenzo finished his last professional race in 13th place.
The 32-year-old Lorenzo, a Honda teammate of Márquez, retires with 47 grand prix victories since debuting in the top class in 2008. He missed three races this season after breaking a vertebra in practice in July and hasn't finished better than 14th since then.
"I didn't feel good in the race so I decided to keep a constant pace so I could avoid a crash and be able to enjoy my final race," Lorenzo said. "Many thanks to Honda for their support during a year that has been very difficult."
The 32-year-old Spaniard announced his decision to retire on Thursday. He could be replaced by Marquez's younger brother and Moto 2 champion Alex at Honda next season.
Quartararo again fell just short in his bid to become the first Frenchman to win a MotoGP race since 1999, but the 20-year-old was delighted with his first season among the elite.
"Nobody could have imagined at the start of the season that I would have six pole positions and seven podiums. It's incredible to finish the season in this way," said Quartararo, who ended fifth in the overall standings.
Quartararo denied Marquez a home pole position in the final qualifying session.
Meanwhile, several riders crashed out during the race. Johann Zarco was hit in the lower legs by a fellow competitor's motorbike.
Zarco had fallen off his bike and was jogging away from the track when Iker Lecuna also crashed. Lecuna's bike slid into the back of Zarco's legs and flipped him over, slamming him into the gravel. Zarco was taken to the medical center for tests.