West Brom made the perfect start to the contest when Chris Brunt fired the visitors ahead in the fourth minute with a powerful long-range effort to silence the home crowd.
© Getty Images
However, the hosts managed to keep the game alive by pulling a goal back in the 13th minute through Andreas Weimann, who rifled home from 12 yards after Christian Benteke had headed the ball to his teammate.
Villa completed the comeback midway through the first half when Matthew Lowton earned some space for himself before delivering an inviting cross to give Leandro Bacuna the easy task of tapping in the equaliser from six yards out.
A dramatic first half continued when Delph made up for his earlier mistake by putting his side ahead with a unstoppable effort past the helpless Ben Foster.
However, there was still to be one final twist before half time as Youssouf Mulumbu lost his marker inside the box to drill home the sixth goal of the opening 45 minutes.