The Colombian, trying to rebound from a disappointing performance two weeks ago in Monaco, posted a time of 1 minute, 12.836 seconds, topping Schumacher's finish of 1:13.018.
"It was a pretty good lap," said Montoya, who failed to win in Monaco despite capturing the pole. "We thought it was going to rain a bit earlier so we went out to put a decent lap in."
With rain falling, Schumacher, driving a Ferrari, decided he could not match his rival's time and held back during the qualifying session.
"The final lap was already too much splitting down and there was no point to keep trying," said the German, who has won this race four times.
Rubens Barrichello and Ralf Schumacher, last year's Grand Prix of Montreal winner, continued the Ferrari-Williams battle, finishing third and fourth, respectively. Kimi Raikkonen completed the top five.