Goals in each half from Neil Mellor and Richard Chaplow gave North End their fifth successive win in the Foxes' den.
Swiss defender Bruno Berner scored a late consolation for the hosts.
It was Leicester's first league defeat at the Walkers Stadium in 25 outings since losing 1-0 to Millwall on September 13 last year.
City dominated the early stages without really threatening Andy Lonergan's goal but Preston looked dangerous on the break, as Nigel Pearson's side would discover to their cost for Chaplow's goal.
Preston should have gone ahead in the 16th minute following good link-up play down the right between Mellor and Billy Jones.
Jones' low cross looked like being turned in by the unmarked Chris Sedgwick at the far post but the midfielder was slightly off balance when the ball reached him and he blazed his shot over the crossbar.
A Chaplow-led counter-attack could have quickly brought another goal for the visitors but his cross went straight into Chris Weale's arms.
After Matty Fryatt had curled a shot just wide, Weale was then called into more athletic action.
Mellor's cross from the left was headed goalwards by Chris Brown. The ball looked like looping into the corner but Weale plucked it from the air at full stretch at the last moment.
At the other end, Lonergan kept his side ahead by blocking Matt Oakley's shot with his feet. Paul Gallacher headed the rebound on to the roof of the net.
The opening goal came from a poor piece of defending from Richie Wellens in the 42nd minute. The former Doncaster playmaker inexplicably headed Wayne Brown's clearance back into his own penalty area instead of directing the ball clear.
Brown seized possession and showed quick feet to set up strike partner Mellor, who clinically steered the ball into the bottom corner from 15 yards.
Weale then kept his side in the game with a point-blank save to deny Mellor a minute before the break.
Dany N'Guessan should have done better than blaze his shot over the crossbar when set-up by Wellens early in the second half.
Preston doubled their lead after 66 minutes when Mellor broke from the edge of his own box.
Brown backed off and allowed the burly forward to reach the City box where he squared the ball for Chaplow to shoot underneath Weale.
Leicester were given hope in the 90th minute when Lonergan parried Gallacher's shot into Berner's path and the full-back returned the ball into the bottom corner.
The Foxes pushed for an equaliser throughout the four minutes of injury time but it was not forthcoming.