Tom Barkhuizen maintained his scoring form with two more goals as Preston North End put Reading to the sword at Deepdale.
The former Morecambe man took his tally for the week to four goals in three games, netting twice against the Royals.
In between, he set up Daryl Horgan to find the net in what was an impressive performance from the Lilywhites.
Victory moved them up to eighth place, six points off the top six.
North End put an uncertain opening 20 minutes behind them - one in which the visitors were on top - to go on and boss the game.
Barkhuizen swept home a fine finish from the edge of the box in the 31st minute, Horgan getting the second five minutes before half-time.
The home side effectively completed the job early in the second half as Barkhuizen turned home Andy Boyle's knock down.
Simon Grayson had made two changes to the side which drew at Derby, Horgan and Daniel Johnson returning to the starting XI in place of Paul Gallagher and Callum Robinson.
North End started in a 4-4-2 system, Barkhuizen partnering Jordan Hugill up front, with Aiden McGeady on the left-wing and Horgan on the right.
Reading made the early running, Lewis Grabban sending a dipping shot from 25 yards just over the bar and on to the top of the net.
Chris Maxwell saved a shot from Jordan Obita, the PNE goalkeeper well positioned to get behind it.
PNE's first chance of note saw Barkhuizen lift a left-foot shot too high after Johnson and Hugill had linked well to find him on the edge of the box.
Maxwell produced a fine save in the 22nd minute to dive and push behind a shot from Garath McCleary who had cut inside from the left channel to work himself into a shooting position.
The resulting corner from John Swift was met in the box by Yann Kermorgant on the volley, Tom Clarke throwing himself in the way to block very well.
Paul Huntington treated Deepdale to a fine back heel when North End were on the attack, something of a collector's item from the centre-half.
A stunning piece of footwork from McGeady saw him dump Royals defender Joey van den Berg on his backside before getting a shot away to the right of goal, keeper Ali Al-Habsi diving to parry it away.
North End went in front in the 31st minute, Horgan getting possession on the right-wing and playing a pass inside to Barkhuizen who swept a first-time shot from the edge of the box over Al-Habsi and into the net.
The visitors lost Jordan Mutch to injury straight after, the midfielder replaced by Danny Williams.
Five minutes before the interval, Preston doubled their advantage, the goal owing much to the pace of Barkhuizen.
He sprinted from his deep inside his own half as North End counter-attacked after clearing a Reading corner..
As he got into the box, he squared the ball to Horgan who's first shot was blocked by a defender, the Irishman following-up to stab home the rebound despite Al-Habsi getting a hand to it.
The third goal came in the 49th minute, a push on Horgan by Obita earning North End a free-kick inside the Reading half.
Horgan lifted the set-piece beyond the far post, Boyle knocked it back inside and Barkhuizen lifted the ball over the keeper from inside the six-yard box.
Sniffing his hat-trick, Barkhuizen fired a shot over the bar from 20 yards then tried an ambitious effort from a tight angle when team-mates were better placed inside the box - Hugill and Ben Pearson both letting him know.
A 66th minute free-kick from McGeady sailed inches wide of the target, then Greg Cunningham was just off target with a low first-time drive from the edge of the box after McGeady's corner had been laid into his path by Johnson.
Barkhuizen's race was run 14 minutes from time when he pulled up with cramp, Robinson coming on to replace him.
North End kept their foot on the gas throughout the second half and there were no scares from Reading who were very much second best.
PNE: Maxwell, Clarke, Huntington, Boyle, Cunningham, Horgan (Browne 61), Pearson, Johnson, McGeady, Barkhuizen (Robinson 76), Hugill (Beckford 87). Subs (not used): Makienok, Spurr, May, Lindegaard.
Reading: Al Habsi, McShane (Oxford 72), van den Berg, Blackett, Gunter, Mutch (Williams 33), Swift, Obita, Grabban (Beerans 77), McCleary, Kermorgant. Subs (not used)Evans, Meite, Popa, Jaakkola.
Referee: Scott Duncan (Northumberland)
Attendance: 10,787 (513 away)