The 20-year-old passed reigning World Champion Jorge Lorenzo with 10 laps remaining to move 39 points ahead of his compatriot with just four races remaining.
Seven-time World Champion Valentino Rossi was third as he held off pressure from Alvaro Bautista and Stefan Bradl in a fantastic battle for a place on the podium.
However, it was a disastrous day for Marquez’s Honda teammate Dani Pedrosa as he crashed out seconds after he and Marquez touched wheels to all but end his championship hopes.
As in many races this season it was Lorenzo who made the fastest start as he leapfrogged Marquez, who had started on pole, to move into the lead.
However, after losing some time as he ran wide in the collision with Pedrosa, Marquez was gaining on Lorenzo all the time and eventually made his move down the inside of the Yamaha rider with 10 laps remaining.
In pictures: Bollywood celebs who share birthdays
'Kahaani 2' trailer launch photos: Vidya Balan takes an auto ride
Photos: Priyanka Chopra's family, celebs watch 'Ventilator' at MAMI
Photos: Raveena Tandon, Sohail Khan at Marathi film 'Bhay' music launch
SRK-Gauri anniversary: B-Town stars and their non-filmi better halves