Max Verstappen clinched pole position for Sunday's Canadian Grand Prix and Fernando Alonso secured an unlikely spot on the front row in Montreal.

Alonso, who set the pace in the final practice session, claimed second place in tricky, wet conditions in Saturday's qualifying session.

That hands the 40-year-old Spaniard his first front-row start in Formula One since he won from pole position at the German Grand Prix just under 10 years ago.

The two-time world champion, racing for Alpine, was the recipient of a huge ovation from the crowd as he celebrated his supreme qualifying performance, clocking up a time of 1:21.944 behind championship leader Verstappen's 1:21.299.

"It feels great. It was an unbelievable weekend for us so far, we’ve been competitive in free practice – which we normally are on Friday but on Saturday we seem to lose a little bit of pace – but in wet conditions today the car was mega, I was so comfortable driving this car and I think the fans gave me a push," a jubilant Alonso said.

When asked what his approach will be on Sunday, Alonso quipped: "Let's see, I think I will attack Max on the first corner."

Verstappen's pole ended the day on a high note for Red Bull, with team-mate and fellow title contender Sergio Perez set to start in 13th place after crashing out in Q2.

In difficult conditions, the reigning world champion – who will be further buoyed by title rival Charles Leclerc having to start at the back on Sunday due to Ferrari changing his entire power unit – was delighted with the composure shown by his team.

"Of course I still expect it not to be a straightforward race, today with tricky conditions, we stayed calm and we made the right calls in Q3 so of course, super happy with that to get pole position here and to be back in Montreal and great to see all the fans," he said.

"You really get that go-karting sensation back on this track with proper curves. We always enjoy driving here and I’m looking forward to tomorrow."

Carlos Sainz looked poised to push Verstappen, but a mistake on the final corner cost the Ferrari driver, who will start third on the grid. An incident involving the Spaniard and Esteban Ocon was investigated, but the stewards decided no further action was required.

Sainz said: "I was feeling quite okay with the car, especially in the full wet. In that lap I knew I had lost a bit too much, I tried to do a very quick last corner but it didn't pay off and it cost me half a second. I ended up with three for that mistake. I think it's going to be a good fight with Max up front and Fernando has been fast all weekend."

Meanwhile, Lewis Hamilton – who did not hide his frustration with his car after struggling in practice on Friday – was lifted by claiming fourth.

Mercedes team-mate George Russell had to settle for eighth, however, after a decision to go on slicks in Q3 failed to pay off.