Nigel Worthington started the game with a 4-3-3 formation to increase the goalscoring opportunities, but in the end it was his Norwich City defenders who won this game.
A poor clearance from Robert Green let in Robert Earnshaw for the Baggies opener, but City captain Craig Fleming, headed an equaliser in first-half stoppage time.
A well-timed run by Earnshaw left the Norwich defenders flat-footed four minutes into the second half to set up Kieran Richardson, but Fleming's fellow centre-back, Gary Doherty, headed a second equaliser for the Canaries.
Green made amends for his poor first-half clearance by pulling off vital saves to deny Kevin Campbell and Jonathan Greening, before Fleming turned up in the Baggies penalty area, five minutes from full-time, to set up the winning goal, a thumping left-foot volley from midfielder Damien Francis.
The Baggies kicked off attacking the River End goal and Earnshaw had the first shot in the third minute, but Green was able to save comfortably.
Two minutes later Russell Hoult had to tip over a dipping header from Dean Ashton.
A shot from Darren Huckerby was caught by Hoult above his head. Ashton fired in from long range but was a yard off target.
A good interchange of passes ended with Ashton heading wide from Huckerby's left-wing cross and another Huckerby cross was deflected into the sidenetting for a corner.
Ten minutes from half-time Earnshaw's dipping shot came back off the crossbar and seconds later Greening saw a shot come back into play from a combination of Green and a post.
In the 41st minute Green's poor clearance let in Earnshaw and he calmly slid the ball under the Norwich keeper in a one-on-one situation.
Riccardo Scimeca was booked for chopping down Huckerby in the 45th minute.
Simon Charlton floated in the resulting free-kick, which in turn led to a right-wing corner taken by Graham Stuart, making his home debut for Norwich.
Captain Fleming headed the ball goalwards at the far post and Hoult's attempted punch only succeeded in helping the ball on its way into the back of the net to put the home side on level terms.
The injured Charlton then had to be replaced by Jim Brennan seconds before the half-time whistle.
Richardson burst into the City penalty area in the first minute of the second half, but lost possession under pressure from Doherty and the ball ran through to Green.
However, in the 49th minute Richardson was in the right place to tap in when Earnshaw timed his run to get behind the City defenders and fired the ball across Green from the right and Richardson arrived at the far post to finish with ease.
In the 58th minute Ashton's shot was comfortably saved by Hoult, but the home side were still looking second best to the fluent Baggies. However, Stuart was unlucky to be penalised for a foul on the edge of the City penalty area.
Green saved the resulting free-kick from Earnshaw and Norwich were back on level terms in the 62nd minute when Doherty headed Huckerby's diagonal cross from the left past Hoult at the far post.
This should have settled the Canaries but they continued to look anxious.
Paul McVeigh came on for Stuart and his first job was to head away a dangerous free-kick for a corner.
Green did well to save a rasping drive from Greening and stood up well to deny Campbell in a one-on-one confrontation.
In the 85th minute a bout of head tennis in and around the West Brom penalty area ended when Fleming chested the ball into the path of Francis, who hit a left-foot volley inside Hoult's right-hand upright from the edge of the area.
Man of the Match: Craig Fleming - The Canaries captain led the way with a goal and the set-up for Damien Francis' crucial late winner.