Saido Berahino took another step towards redemption by playing a starring role in West Brom's 3-2 victory over Crystal Palace.
A day after publicly apologising for his threat to go on strike as he tried to force a move away from the club, the 22-year-old capped a fine individual and team performance in the first half with a stunning goal.
Berahino finished off a flowing move to make it 3-0 after only 31 minutes, following on from goals by Craig Gardner and Craig Dawson.
But Albion ended the match hanging on after a brace from Connor Wickham, the second a stunning volley in the 80th minute.
The three points were marred by the loss of Chris Brunt, who was carried off just before half-time after landing awkwardly in an innocuous-looking tussle with Wilfried Zaha.
The home fans had shown their appreciation for the 31-year-old before and during the game a week after he was hit in the face by a coin thrown by a Baggies fan, and it was a sad way for his evening to finish.
For 12 minutes the game looked every inch a clash between two out-of-form teams until West Brom put together a move of real quality to take the lead.
Berahino played a perfect through-ball to Salomon Rondon, who drove into the box and shot across goal. Wayne Hennessey did well to stick out a foot but could only divert it to Gardner for a simple finish.
If the first was all about attacking quality, the second was a defensive disaster for Palace.
Stephane Sessegnon won a free-kick after being wrestled by Jordon Mutch just outside the box and Gardner's free-kick found Dawson all alone 10 yards out to power a header into the corner.
If Albion fans were not pinching themselves already, they certainly would have been when their team crafted a sublime third in the 31st minute.
Dawson began the attack with a fine drilled ball forward to Rondon, who cushioned it expertly and played in Sessegnon down the right. He then swung over a perfect deep cross for Berahino, who volleyed it sweetly with his instep past Hennessey.
There was a huge smile on the England man's face as he celebrated in front of the Albion fans, who certainly appeared in the mood to forgive.
Albion nearly had a fourth before the break as Gardner's free-kick from 30 yards out clipped the foot of Joel Ward and bounced off the post.
It was the first time Albion had scored three times in a game all season, and the first time they had managed three in the first half since a clash with Tottenham in April 2014.
If Palace could cling to any crumb of comfort, it was that Spurs fought back to draw that match, and within three minutes of the start of the second half, the visitors were back in it.
The goal was all of Albion's making, with Jonas Olsson inexplicably waiting for Ben Foster instead of clearing an aimless header forward. Wickham nipped in and lobbed the goalkeeper before slotting into an empty net.
Palace boss Alan Pardew had sent on Yannick Bolasie for the ineffectual Emmanuel Adebayor, whose only contribution had been to rake his studs down Dawson's calf, which might have earned him red rather than yellow.
Berahino almost put the game to bed with a shot that hit the angle of post and bar, but West Brom largely appeared comfortable, although Darren Fletcher was fortunate not to concede a penalty for bringing down Bolasie.
Then, with 10 minutes to go, Wickham seized on a loose ball after a free-kick was not properly cleared and drilled it into the top corner.
Substitute Mile Jedinak was then denied an equaliser by Gardner's header off the line as Palace's winless start to 2016 in the Premier League continued.
TWEET OF THE MATCH:
Lord Sugar @Lord_Sugar
Oh dear Pardew (Palace) 3 nil down against WBA in 33 mins. I think his honeymoon is over with the chairman.
Lord Alan Sugar almost had egg on his face after Palace's second-half fightback.
Ben Foster: 6
Jonas Olsson: 5
Gareth McAuley: 6
Craig Dawson: 7
Chris Brunt: 6
Claudio Yacob: 6
Darren Fletcher: 6
Craig Gardner: 8
Stephane Sessegnon: 8
Saido Berahino: 9
Salomon Rondon: 7
James Chester: 6
James McClean: 5
Wayne Hennessey: 6
Joel Ward: 5
Scott Dann: 5
Damien Delaney: 5
Martin Kelly: 6
Jordon Mutch: 5
Yohan Cabaye: 5
Joe Ledley: 6
Wilfried Zaha: 6
Emmanuel Adebayor: 5
Connor Wickham: 8
Yannick Bolasie: 7
Dwight Gayle: 5
Mile Jedinak: 5
STAR MAN: Saido Berahino - West Brom cannot afford to have a player of Berahino's quality sitting on the bench and the last two days may just have set him back on the right track at The Hawthorns. First came his apology for threatening to go on strike, and then a performance of real verve. Berahino's exquisite through ball set up the first goal and he gave the third the classy finish it deserved. He was unlucky not to net a fourth that would have finished off Palace when his second-half effort struck the woodwork.
MOMENT OF THE MATCH: West Brom's first goal was a lovely team move but the third deserves to be raved about alongside those scored by Europe's more fashionable sides. The ball forward from Craig Dawson was pinpoint and superbly turned on by Salomon Rondon to Stephane Sessegnon. He chose to cross early and the ball was perfect for Berahino, whose cushioned finish on the volley was a real touch of class.
MOAN OF THE MATCH: Palace were woeful in the first half but the real low point was seeing Chris Brunt carried off. This was supposed to be the match where Albion showed their appreciation for their former captain a week after he was hit in the face by a coin thrown by a Baggies supporter. He was given a standing ovation but that will be little consolation if the knee injury proves as serious as it looked.
VIEW FROM THE DUGOUT: West Brom boss Tony Pulis was boosted by the return of defenders Gareth McAuley and Craig Dawson from injury, although Jonny Evans was missing. Craig Gardner and Claudio Yacob also came into the side from the team beaten by Reading in the FA Cup. Palace boss Alan Pardew stuck with the team that knocked Tottenham out of the FA Cup last weekend but it was not until Yannick Bolasie's entrance in the second half that they showed any real attacking threat.
Leicester v West Brom, Tuesday March 1 - Premier League
Sunderland v Crystal Palace, Tuesday March 1 - Premier League