|Worcester (3) 21|
|Tries: Heem 2 Con: Weir Pens: Weir 3|
|Bath (19) 19|
|Try: Mercer Con: Burns Pens: Burns 4|
Worcester completed a sensational comeback with a try 14 minutes into added time at Sixways against a Bath side who ended up with 11 men.
The visitors led 19-3 at half-time, but saw replacement Ross Batty red carded just seven minutes after coming on and also had Max Lahiff, Lucas Noguera and Aled Brew sent to the sin-bin.
Worcester kept their heads to cash in after a string of penalty offences.
Duncan Weir won it, converting the second of Bryce Heem's two tries.
Bath had looked comfortable at half-time through a converted try by England back-row forward Zach Mercer and four Freddie Burns penalties.
But, after a Weir penalty started the comeback, Chris Pennell set up Heem's first try in the right corner to bring it back to 19-11.
Weir missed the touchline conversion, but added a penalty before referee Ian Tempest took centre stage with his string of cards and penalties.
Replacement hooker Batty was sent off 16 minutes from time for a dangerous neck roll tackle at a ruck. Then after Lahiff's exit for a technical offence, fellow replacement prop Noguera followed before Welsh winger Brew, also on as a replacement, departed for deliberate offside.
And, as Bath continued to offend in a succession of 18 scrums, Warriors' momentum grew, and the visitors' numbers dwindled, the pressure eventually told.
Worcester worked the ball out wide to Heem and the New Zealand winger went over on the overlap on the left to level the scores.
Weir then kept his nerve with by no means a formality of a conversion. And that capped one of the most remarkable finishes to a game in Premiership history, ended Warrors' three-game losing run and earned victory over Bath for only the second time in 13 meetings.
Warriors remain 11th in the Premiership, but are now four points ahead of Newcastle heading into the five-week league break.
Warriors director of rugby Alan Solomons told BBC Hereford & Worcester:
"I've not seen anything quite like that before. It went on and on and on, but the boys held their nerve and we got the try, so all's well that ends well.
"I have been coaching for a long time. I've seen games go right to the death quite often, but not in that particular manner. There were umpteen scrums, and then eventually we got the ball, moved it wide and scored the try.
"In the first half, we gave away far too many penalties and made errors at critical moments, which kept their points ticking over. We spoke about the first 10 minutes after half-time being critical, and then slowly the momentum changed after our penalty in the 48th minute.
"It would have made it difficult had we lost, but the Premiership is not a sprint. There's still a long way to go this season and it was important to come out of this block of games with a win. It will boost the players' confidence to know you are that much down at half-time, and can still turn it round."
Bath coach Todd Blackadder:
"I have never been involved with a game that finished like that. It's a new one. It will be fascinating to go back and have a look at it all and try to work out what the hell happened.
"We will always look at it as being 19-3 in front and in a commanding position, and then being down to 11 men at the end. Some of the penalties we conceded in the second half we deserved to concede, but it would be good to get some clarity and consistency on others.
"I haven't had a good chance to have a look at the replay of the red card, but if it was as dangerous as it sounds, then no problem at all. You just have to live with it."
Bath attack coach Girvan Dempsey told BBC Radio Bristol:
"We're absolutely gutted. It was a very strange end - one I've never experienced before. Ultimately, Worcester were clinical. We were down to 11 men.
"It was challenging, from a coaching point of view. It's really disappointing because we put in a huge amount of positive work in the first half.
"The boys showed a huge amount of character to stay in the fight for so long. But we didn't put enough pressure on them - we allowed them to get cheap possession."
Worcester: Pennell; Heem, Venter, Te'o, Humphreys; Weir, Hougaard; Black, Singleton, Schonert, Bresler, Fatialofa, Hill, Lewis, Van Velze (capt).
Replacements: Taufete'e, Waller, Milasinovich, Phillips, Barry, Mama, Arr, Mills.
Sin bin: Fatialofa (20).
Bath: Wilson; Rokoduguni, Wright, Roberts, Vuna; Burns, Chudley (capt); Van Rooyen, Dunn, Thomas, Ewels, Attwood, Ellis, Louw, Mercer.
Replacements: Batty, Noguera, Lahiff, Stooke, Bayliss, Green, Priestland, Brew.
Sent off: Batty (64).
Sin bin: Noguera (80), Lahiff (80), Brew (80).
Referee: Ian Tempest.
For the latest rugby union news follow @bbcrugbyunion on Twitter.