Danny Cipriani scored a try and kicked 16 points to inspire Sale to victory over his former club London Wasps.
A dull first half was lit up when the fly-half came off the bench and set up Mark Cueto to score, while adding a conversion and two penalties.
Cipriani extended Sale's 10-point half-time lead by converting his own effort.
Wasps hit back through Ashley Johnson, Joshua Bassett and a penalty try to close the gap to a point, but Cipriani made sure with the game's last kick.
The visitors have now started the season with three defeats, while Sale picked up their second win of the campaign.
A tight opening saw both sides unable to break into any rhythm and several players needed treatment in the first half, disrupting the flow of the game.
Fly-half Cipriani replaced Nick Macleod for his first appearance of the season and wasted little time getting into the action.
The first points finally arrived in the 25th minute - within 60 seconds of Cipriani entering the game - as he landed his kick successfully before Andy Goode immediately replied for Wasps.
Sale hit back with a period of extensive pressure and, after a driving maul from a line-out, they were denied a try by the Television Match Official (TMO) as replays did not prove the ball was grounded over the line.
It was a sign of things to come and Cipriani, who also kicked the extras, produced a perfectly weighted pass to see Cueto go over on the right for his second try this term.
Cipriani was at the heart of everything Sale did and created more pressure as the half drew to a close, before kicking his side into a 13-3 lead at the break.
The England international missed his first attempt in the second half but soon after crashed over in the corner. The try - checked by the TMO - was converted by Cipriani to take his personal tally to 15 for the night.
Great work on the left saw Wasps get back into the game with Johnson going over for a try converted by Goode. The visitors were then awarded a penalty try as the Sharks buckled to leave the game on a knife-edge, with Cipriani's third successful penalty sandwiched in between.
Bassett's try closed the gap to one point, but Goode agonisingly missed the extras and the chance to put his side in front for the first time.
That proved crucial when Cipriani's late three points sealed victory.
VIEW FROM THE DRESSING ROOM
Sale Sharks director of rugby Steve Diamond:
"We've got a lot of competition in the squad and people have to fight and play in the second team on a Monday night and Danny Cipriani has done that.
"He's come back, come on and done what he does well. He controlled the game with the pack giving him some ball. He played really well, he won us the game.
"Everyone talks about Danny Cipriani but we just want the consistency. He's come on and proved his worth. What he needs to do is do that regularly."
Wasps director of rugby Dai Young:
"To be honest, I'm hugely disappointed the fightback didn't come earlier. It took us until the 55th minute of the game before we got back into it.
"We could have even sneaked it in the end but that's not good enough. I thought some of our skill levels tonight were embarrassing and that's what I've said to the players.
"We made things very difficult for ourselves by playing in the wrong areas and not fielding simple high kicks. I thought our skill levels tonight were unacceptable."
Sale Sharks: Arscott; Miller, Cueto, Forsyth, Brady; Macleod, Cliff; Harrison, Taylor, Thomas; Kulemin, Paterson; Braid, Seymour, Beaumont.
Replacements: Easter for Beaumont (18), Cipriani for MacLeod (23), Mackenzie for Arscott (53),Lewis-Roberts for Harrison (62), J Mills for Kulemin (62).
Not Used: Jones, Cobilas, Fowles.
London Wasps: Masi; Wade, Jacobs, C Bell, Bassett; Goode, Davies; Mullan, Festuccia, Cooper-Wooley; Launchbury, Myall; Johnson, Jones, Jackson.
Replacements: Carlisle for Masi (13), Simpson for Festuccia (47), Hughes for Jackson (50).
Not Used: Lindsay, McIntyre, Taylor, Cannon, T Bell.
Referee: Andrew Small (RFU).