The Spaniard, who is racing in his 200th Grand Prix weekend at the Gran Premi Aperol de Catalunya, put his Repsol Honda on pole with a lap of one minute 40.893 seconds.
The championship leader was joined on the front row by Cal Crutchlow, who finished 0.608secs behind on his Tech 3 Yamaha and fellow Spaniard Jorge Lorenzo, who was 0.673s back on the factory Yamaha.
Pedrosa lowered the record previously been held by Casey Stoner when he went round in 1:41.186 in 2008.
Lorenzo, who trails Pedrosa by 12 points in the championship, had to abandon his first run due to a clutch problem and eventually had to change bikes, but he still briefly managed to snatch second place from Crutchlow before the Briton stole the position back just seconds later.
Spaniard Alvaro Bautista was fourth fastest on his Gresini Honda followed by the Ducati of Nicky Hayden and another home favourite in Marc Marquez (Repsol Honda).
Seven-time champion Valentino Rossi had to settle for seventh on his Yamaha after topping the timesheets on Saturday and was joined on the third row by Andrea Iannone (Pramac Ducati) and Andrea Dovizioso (Ducati).
Stefan Bradl rounded out the top 10 on his LCR Honda with Briton Bradley Smith qualifying in 12th on the other Tech 3 Yamaha and Michael Laverty back in 20th.