Villa turned the clock back more than three decades as Christian Benteke's 65th-minute penalty clinched a dramatic derby victory over Albion.
It was a match which evoked memories of an opening day clash in 1983, when Brendan Ormsby'ssecond-half goal gave Villa the points after the teams had shared six first-half goals.
And victory was all the sweeter after a run of six West Miidlands derbies in which Villa had not recorded a win.
The first half alone was worth the ticket price, a crazy contest of half-a-dozen goals and several near misses.
Albion quickly established a two-goal lead before Villa stormed back through Andi Weimann, Leandro Bacuna and Fabian Delph - only for Youssouf Mulumbu to make it 3-3 just before the interval.
But Benteke had the final word with a super-cool spot kick which secured three important points.
Villa's start was even worse than it had been at The Hawthorns in November, when they had conceded two Shane Long goals in the opening 11 minutes.
This time there was no Long, but the damage was inflicted in just eight minutes.
Only four had elapsed when former Villa defender Liam Ridgewell played the ball in to Brunt, who controlled quickly before sending a stunning left-foot angled drive beyond Brad Guzan and into the top corner.
Guzan then had to race out to save at the feet of the Albion skipper, who was injured in the process, and after the visitors won a free-kick of the left, James Morrison's cross was sliced into the net by Delph as the midfielder attempted to clear.
Four minutes later, though, Villa were back in contention.
Guzan's long free-kick took a flick off an Albion defender as Benteke challenged, and Weimann calmly lobbed over Ben Foster from just inside the box.
Bacuna then fired just wide and Weimann had a close-range effort held by Foster before Villa drew level.
A flowing move culminated in Matt Lowton crossing low from the right and although Bacuna didn't make the best of contacts he did enough to scoop the ball over Foster and over the line before Benteke ran it into the net.
After such a whirlwind opening, it came as something of a surprise when the game took on a more settled pattern for the next 10 minutes or so, although Jonas Olsson desperately conceded a corner when Benteke's flick-on threatened to send Weimann clear.
But Villa were now flying and on 37 minutes they were ahead with a sensational goal.
Benteke headed on a long high ball from deep in the home half, and Delph sidestepped his marker on the left-hand edge of the area to hammer an unstoppable left-foot rising drive in off the underside of the bar.
Benteke almost made it 4-2 with a shot which went off Foster's legs for a corner but in the 43rd minute the Baggies were back on level terms, Mulumbu stroking a low shot past Guzan after a neat build-up had left him clear.
Albion were on top at the start of the second period, sub Morgan Amalfitano almost catching out Guzan with a skidding drive which the keeper saved at the second attempt before Diego Lugano sent a diving header just wide from Brunt's free-kick.
But it was the home side who regained the lead in the 65th minute, Benteke netting from the spot after being wrestled to the ground by Lugano as they contested Bacuna's right-wing centre.
The penalty conversion was sheer perfection, the Belgian striker briefly checking his run-up and then stroking the ball to Foster's right after the keeper committed himself to the left.
Victor Anichebe almost brought the scores level again with a 73rd-minute drive which just cleared the bar and Albion pressed hard towards the end.
But it was the Villa faithful who were celebrating at the final whistle.
Villa: Guzan; Lowton (Holt 65), Vlaar, Clark, Bertrand; Bacuna, El Ahmadi (Sylla 76), Westwood, Delph; Weimann (Baker 79), Benteke. Unused subs: Steer, Helenius, Albrighton, Tonev.
Albion: Foster; Reid (Berahino 76), Lugano, Olsson, Ridgewell; Mulumbu, Yacob, Morrison, Brunt; Anelka (Amalfitano 26) Anichebe (Vydra 80). Unused subs: Myhill, Dorrans,McAuley, Jones.