Romelu Lukaku scored a second half double to secure Everton all three points at the Hawthorns in a superb fight back from the Toffees.
Roberto Martinez's side had found themselves two goals down courtesy of a goal from Saido Berahino in the first half and a second half header from Craig Dawson.
However, they fought back excellently, with Lukaku bagging his first of the evening by getting onto a Gerard Deulofeu cross just seconds after the Baggies had gone two nil up.
That goal saw the side grow in confidence and they were soon level, with the Belgian turning provider, as he slipped in Arouna Kone, who had just kept himself onside, finishing calmly past keeper Boaz Myhill to draw the sides level.
It was the perfect introduction from the Ivorian, who just minutes before had been introduced by manager Martinez in a double substitution that paid instant rewards.
Everton's tails were now firmly up and they sensed that a winner could be on the cards. It didn't take too long for it to arrive either, as once again Deulofeu whipped in a cross and Lukaku got away and just managed to squeeze the ball home to make the score 3-2.
The Blues would not win it easily though, as the defensive frailties they'd shown in the game nearly cost them again, with Rickie Lambert getting free in the box and firing wide late on.
They stuck firm to secure an unlikely victory though, with the three points seeing them move into fifth in the Premier League table ahead of this weekend's Merseyside derby.
It will be a big boost to Martinez as well, who will be delighted that Lukaku had managed to return to form after a disappointing couple of displays from the Belgian in recent weeks.
He will however have been worried about his side's defensive display, with Ramiro Funes Mori looking shaky, Jagielka off the boil and youngster Browning unimpressive.
What it did show was just how good John Stones has been this season, while they also miss Seamus Coleman hugely, and the Spaniard will be hoping to have both back before Sunday's derby.