Stern John bagged his first goals for Southampton as George Burley's men brought an end to West Brom's six-game unbeaten run and rescued a game they looked to have thrown away.
John opened the scoring and then struck the winner as Saints made a mockery of their league position just two points above the drop zone.
Rudi Skacel put the hosts two up but a brace from midfielder Robert Koren either side of half-time gave West Brom hope of snatching the points.
Southampton are the most unpredictable team in the Coca-Cola Championship, following their 5-1 mauling by struggling Preston with a 2-1 win away at Sheffield United.
But they started like they had a point to prove in front of their home fans and were two goals up inside 23 minutes.
Inigo Idiakez had looked to test out West Brom goalkeeper Dean Kiely early on, but his drive from 30 yards flew past the left post.
But the Spaniard was involved again when Southampton took the lead after 17 minutes.
His pass picked out Stern John on the edge of the area and the Trinidad and Tobago striker fired into the bottom corner.
Skacel doubled the lead just six minutes later when he converted Nathan Dyer's pass with a low drive.
West Brom gave themselves hope in the 32nd minute when Slovenia international Koren slotted home from close range after Chris Brunt's cross from the left.
The diminutive Dyer almost restored Southampton's two-goal lead five minutes before the break but his 25-yard shot came back off the bar.
Saints began the second half as they had the first and Kiely did well to keep out two Marek Saganowski headers within three minutes of the restart, while Idiakez and the lively Dyer both flashed efforts wide.
Kelvin Davis was called into action at the other end to keep the home side in front when he tipped Ishmael Miller's fierce shot round a post.
And the on-loan Manchester City youngster was involved as the Baggies got back on level terms after 62 minutes, heading the ball on for Koren to fire home his second of the game from inside the area.
But West Brom were level for barely two minutes, John slotting home from close range after the visitors' defence had failed to clear Idiakez's corner to restore Saints' lead.
Saganowski should have given the hosts another two-goal cushion when he headed over from Philip Ifil's free-kick, but the miss did not prove decisive as Saints held on for a thrilling win.
Teams
Southampton Davis, Ifil, Thomas, Dailly, Skacel, Dyer, Safri,Viafara, Idiakez (Surman 83), Saganowski (Euell 90), John.
Subs Not Used: Bialkowski, Ostlund, Hammill.
Booked: Dyer.
Goals: John 17, Skacel 23, John 64.
West Brom Kiely, Hoefkens, Barnett, Albrechtsen, Robinson,Gera (Beattie 74), Greening, Koren, Brunt (Morrison 74),Filipe Teixeira (MacDonald 46), Miller.
Subs Not Used: Daniels, Pele.
Booked: Greening, Robinson.
Goals: Koren 32, 62.
Att: 21,967
Ref: Pat Miller (Bedfordshire).