Cape Town - Andy Carroll finally got off the mark for West Ham United as they came from a goal down to beat West Bromwich Albion in dramatic fashion at the London Stadium on Tuesday.
The hosts made the better start in the capital and created the first chance after just four minutes when Manuel Lanzini latched onto Carroll's knockdown before dragging his shot well wide of the left post.
Aaron Cresswell decided to have a pop from 30 yards out in the 10th minute after finding himself in space, but his ambitious shot flew well over the target.
Salomon Rondon wasn't far away from scoring with Albion's first attempt four minutes later as he went past Angelo Ogbonna before chipping the ball onto the roof of the net.
Ben Foster was called into action on 21 minutes as he parried away Lanzini's driven effort from another Carroll knockdown, while the burly striker curled a shot just wide of the post two minutes later after Cheikhou Kouyate won back possession off Claudio Yacob just outside the box.
McClean tested Adrian moments later at the other end with a dipping strike, but there was nothing the Brazilian could do to prevent the Irishman from breaking the deadlock on 30 minutes after his shot deflected off Pedro Obiang and looped in just under the crossbar.
Foster produced a fine save to keep out Lanzini in the 39th minute after the Argentine shifted to his right to get off a curling shot that was pushed beyond the right post, and the visiting keeper denied Kouyate with a brave save at close range two minutes before half-time.
It was almost 2-0 at the break as the Irons failed to clear McClean's free-kick in added time, with Jonny Evans poking a loose ball goalward but Adrian saved on his line.
Carroll threatened right from the restart as he steered Marko Arnautovic's cross over the bar in the 46th minute, but he finally broke his duck for the season 13 minutes later when he rose highest to power a header home from Cresswell's dangerous cross on the left.
Foster had to be alert in the 68th minute as he raced off his line to smother Arnautovic's shot from Lanzini's through-ball, while Adrian reacted sharply to tip the ball over the bar on 83 minutes after Craig Dawson's cross was deflected towards goal by Arnautovic.
Substitute Oliver Burke squandered a golden opportunity to secure victory for the visitors in the final minute when he fired over from six yards out after McClean's cross deflected into his path, and they were made to pay dearly just moments later.
Arnautovic got away down the left flank and fizzed in a low cross that just eluded Javier Hernandez inside the six-yard box, but Carroll popped up to score from the narrowest of angles on the right to snatch all three points.