Ashley Johnson's breakaway score and Tom Varndell's successful chip and chase proved enough for a belligerent Wasps side.
Earlier Saints' Alex Corbisiero had been fortunate to only receive a yellow card for hitting out at Johnson.
The visitors finally broke through the Wasps defence, but Ben Foden's 78th-minute try came too late.
Only a week after plundering eight tries in an emphatic win over Gloucester, the champions were suffocated by a disciplined performance from the home side.
Dai Young's men came so close to toppling last season's runners-up Saracens in their season opener at Twickenham, and this time were able to combine energetic and resolute defence with clinical finishing to record a memorable win over the title holders.
Saints could have faced playing the majority of the game with 14 men, had referee Luke Pearce interpreted Corbisiero's contact on Johnson as a red card offence.
Johnson had clattered the England prop off the ball and received a right hand to the head while the pair were on the ground - with the result a sin-binning for both men.
It was the only spark in a half personified by a gritty Wasps rearguard action, often metres from their own line, with the only scores coming from Stephen Myler and Andy Goode penalties.
In the second period, Welshman George North thought he had a fourth try in two games, after his hat-trick showing against Gloucester, but the referee used the television replay to decide he was offside when running on to Ken Pisi's kick.
It seemed like Saints might grind out an unremarkable win when a pair of Myler penalties gave them the edge.
But on the hour mark Johnson latched on to a loose pass from England centre Luther Burrell to storm away and touchdown, before Varndell clipped the ball through down the left wing and raced on to it for a second superb try.
Goode's replacement Ruaridh Jackson landed two impressive conversions on his debut, but hobbled off with an injury.
That left Rob Miller to score a high pressure penalty to give Wasps an 11-point advantage and, while Foden's try from a Kahn Fotuali'i pass made for a nervy finish, Saints were consigned to a first league defeat in seven games.
Wasps director of rugby Dai Young: "I'm really pleased. I thought for 80 minutes we stood toe-to-toe with the champions.
"There are still lots of things to improve on. The set-piece wasn't where we would like it to be which mean we ended up defending for long periods.
"But I'm really proud of the effort. I thought the defence and the will to win was outstanding from one to 23.
"You don't get the opportunity to celebrate after playing Northampton very often - or we don't anyway. It's a great feeling for the players."
Northampton director of rugby Jim Mallinder: "I don't think we played badly. But I think we came up against a very motivated, well organised Wasps.
"We probably just weren't smart enough on the day. I think at 9-3 we deserved that lead.
"I'm interested in the George North non-try. From the views that I've had it looked at least to be even - certainly not in front. But that happens.
"I thought we were in charge of the game but two loose bits of play and you're up against it."
Wasps: Masi, Tagicakibau, Daly, C. Bell, Varndell, Goode, Simpson, Mullan, Festuccia, Cittadini, Launchbury, Gaskell, Johnson, Haskell, Hughes.
Replacements: Lindsay, Yapp, Cooper-Woolley, Myall, Thompson, Davies, R. Jackson, Miller.
Northampton: Wilson, K. Pisi, G. Pisi, Burrell, North, Myler, L. Dickson, Corbisiero, Hartley, Ma'afu, Lawes, C. Day, Clark, Wood, Manoa.
Replacements: McMillian, A. Waller, Denman, Craig, Fisher, Fotuali'i, Hooley, Foden.
Referee: Luke Pearce (RFU)
Wasps scored two tries in four second-half minutes to stun Premiership champions Northampton Saints.