There will be no perfect ending at Wembley for Liverpool captain Steven Gerrard. Villa's 2-1 victory means the Los Angeles-bound midfielder won't have a chance to end his Liverpool career with a trophy on his 35th birthday in the May 30 FA Cup final.
Philippe Coutinho put Liverpool ahead 30 minutes into the semifinal. But in-form striker Christian Benteke leveled for Villa six minutes later after a cutback from captain Fabian Delph.
Villa took the lead at the start of the second half when Delph started and finished a swift move that involved smart passes from Benteke and the impressive Jack Grealish.
In the Premier League, defending champion Man City ended a two-game losing streak with a 2-0 victory over West Ham.
West Ham's James Collins accidentally lobbed his own goalkeeper, Adrian, after an attempted interception went wrong. The second goal was slicker with Sergio Aguero exchanging passes with Jesus Navas before netting his 20th league goal of the season.
Tottenham striker Harry Kane joined Aguero at the top of the league scoring leaderboard by completing a 3-1 victory for his sixth-placed team at Newcastle. The 21-year-old Kane is the first Tottenham player since Gary Lineker in 1992 to reach 30 goals in all competitions in one season.