Max Verstappen claims first pole for Monaco Grand Prix
Ferrari's Charles Leclerc will start Sunday's race on the second row alongside the Alpine of Esteban Ocon although the stewards were investigating an incident involving Leclerc.
"You have to go all out and risk it all," said Verstappen.
"I knew I was behind, I'm very happy to be on pole for the first time here."
Alonso in his flying Aston Martin was denied a first pole since 2012 by just 0.084s.
"Pole position means a lot here in Monaco, but today Max was a little bit faster," said Alonso.
The Spaniard added: "First row on the grid is still a big thing for us. We will try to win. It's very short into Turn 1, but this year normally we make good starts."
Leclerc, on pole for the past two races at his home track, said before being summoned to the stewards: "All in all happy, but I would have preferred to be first of course."
The session was red-flagged when Sergio Perez smashed his Red Bull into a wall leaving last year's winner at the rear of the grid.
With overtaking at a premium on the narrow twisting streets of the Principality, Perez's misfortune could prove costly for his title challenge with the Mexican 14 points adrift of Verstappen going into this sixth race of the season.
Carlos Sainz in the second Ferrari posted the fifth-fastest time to occupy the third row with Mercedes' Lewis Hamilton.
Ocon's Alpine teammate Pierre Gasly, George Russell of Mercedes, Alpha Tauri's Yuki Tsunoda and McLaren's Lando Norris completed the top 10.