Taqele Naiyaravoro was red carded as Saints lost a thrilling Premiership Rugby Cup clash 36-32 to Wasps at Franklin's Gardens on Saturday afternoon.
The lead changed hands nine times in all, but it was Wasps who earned the win thanks to the penalty try that was awarded for Naiyaravoro's high tackle in the corner.
It was Naiyaravoro's second yellow card of the day, having earlier been sin-binned for what referee Michael Hudson deemed as a trip on a Wasps player.
Saints still looked like they might squeeze Wasps out as they piled the pressure on in the closing stages, but the away side just about held firm to make sure of the points.
Wasps almost got off to a flyer early on but Sam Spink's break was ended by a brilliant tap tackle from Mitch Eadie.
Zurab Zhvania and Sam Wolstenholme both then went within inches as Wasps frantically tried to come away with some reward for their efforts.
Naiyaravoro looked to have relieved the pressure with a big tackle that forced a knock-on, but Saints gave the ball straight back and Wasps made them pay.
Nizaam Carr did some nice work close to the line before offloading to Jacob Umaga for a simple score.
Umaga converted, but Saints were stung into life, with Ollie Sleightholme, Tom Collins and Rory Hutchinson starting to look threatening.
And it wasn't long before the hosts scored, booting a kickable penalty to the corner and demolishing Wasps in the drive, with James Fish the beneficiary.
Grayson struck the post with the conversion to leave Saints two points behind, but they were soon ahead in bizarre fashion.
Hutchinson's pass flicked the head of Grayson and the ball bounced into space for Naiyaravoro to pick up and dot down.
Grayson missed the conversion, but he was able to make amends with a penalty after Saints won it against the head at a scrum.
Wasps needed to regain their early momentum and they were boosted by a yellow card for Naiyaravoro who was punished for what referee Hudson felt was a deliberate trip, even though it looked like the Saints wing had slipped.
Saints suffered another blow immediately as Sleightholme, who had started really well, was forced off with an injury.
Wasps were eventually able to make the most of their man advantage with Naiyaravoro still off the pitch as they scored a slick try before the break.
Former Saints lock Tim Cardall finished things off after Marcus Watson had started it with a clever offload while going to ground.
But Umaga missed the conversion to leave Saints 13-12 up at half-time.
Wasps were soon in front in the second period though as they enjoyed huge numbers on the left after taking a quick tap penalty and Sione Vailanu finished things off.
Umaga missed the conversion again but Saints had conceded two tries during Naiyaravoro's costly absence.
He returned to the field almost immediately after the Wasps try and Saints didn't waste any time getting back in front as Eadie pouched an intecept try.
Grayson converted to take his team into a 20-17 lead and Wasps were then forced into a long period of defence as Saints again cranked up the heat in the lineout drive.
But it was Wasps who were to score next as replacement back Owain James produced a brilliant offload over his own head for Carr to earn a clear run to the line.
Umaga again missed the conversion but his team led 22-20 with 22 minutes of the see-saw match remaining.
Umaga was once again the villain with 15 minutes to go as he clearly knocked on deliberately as Naiyaravoro passed inside after charging down the line.
That earned Umaga a yellow card and Saints a penalty try, putting the home side 27-22 up.
But yet again the lead changed hands as Jack Willis applied the finishing touches for Wasps after a period of pressure close to the Saints line, and Rob Miller converted in Umaga's absence.
It was merely a minute before Saints were back in front though as Naiyaravoro and Teimana Harrison did some brilliant work in the build-up before Dingwall finished well in the corner.
Grayson missed the conversion and there was still even more drama to come.
Wasps looked set to score in the corner, but Naiyaravoro came flying across and got his man in touch, but the wing was deemed to have made a high tackle and a penalty try was awarded.
Not only that, but Naiyaravoro was handed his second yellow card of the day, making a red, leaving Saints a man down for the remainder of the game.
But still they came forward, refusing to give up, and Dingwall was so close to his second try of the day, eventually being stopped agonisingly short.
Saints continued to apply pressure after winning a series of penalties late on, but they lost a lineout that allowed Wasps to boot the ball out to confirm the win.
Saints: Collins; Sleightholme (Olowofela 33), Hutchinson, Symons (Dingwall 58), Naiyaravoro; Grayson, Taylor (Mitchell 66); Waller (c) (B Franks 58), Fish (van Vuuren 62), Painter (Hill 62); Ribbans, Bean (Harrison 53); Coles, Wood (Tonks 66), Eadie.
Wasps: Watson (James 40); Odogwu, Spink, Le Bourgeois, Bassett (Miller 67); Umaga, Wolstenholme (Clement 73); Zhvania (West 53), Cruse (Oghre 56), Alo (Toomaga-Allen 53); Cardall, Matthews (Flament 65); Shields (c) (Willis 55), Carr, Vailanu.
Referee: Michael Hudson