The Frenchman Zarco clocked a quickest time of one minute, 53.469 seconds with only a minute remaining in a wet Motegi session for his second career pole in the MotoGP class, pipping Ducati's Danilo Petrucci and championship leader Marquez.
Petrucci finished 0.3 seconds behind Zarco with Marquez a further tenth off the pace to complete the front row, followed by Aprilia's Aleix Espargaro, Ducati's Jorge Lorenzo and Dani Pedrosa's Honda.
"We were ready to fight," said Zarco, who claimed his first pole in the Netherlands almost four months ago. "I'm just so happy, it's perfect motivation because in your rookie season you expect that maybe one time pole position was good enough."
Marquez's chances of extending his lead in the title race could be boosted with his closest rivals Andrea Dovizioso and Maverick Vinales back in ninth and 14th respectively on the grid.
Spaniard Marquez, who like Yamaha's Valentino Rossi paid for his decision to switch his Honda to slick tyres, has a 16-point advantage over Dovizioso with four races left.
Rossi back on bike after double leg fracture
"This time maybe I sacrificed a little bit to attack more to understand different things because I saw that Valentino was on slicks too," said Marquez. "But anyway, happy because the front row was the main target and we are there, we are in front of our main rivals so this is important."
Seven-time champion Rossi qualified 12th on the grid for Yamaha as he continues his return to fitness after a double leg fracture.
Marquez, chasing a sixth victory of the season this weekend, wrapped up his third MotoGP world title at last year's Japan race.
COMMENTS
Comments are moderated and generally will be posted if they are on-topic and not abusive.
For more information, please see our Comments FAQ