The visitors were put under pressure right from the word go. It took just seven minutes for Liverpool to take the lead and level the tie after Villareal defender Bruno Soriano scored an own goal.
Daniel Sturridge scored his side’s second goal in the 63rd minute before Adam Lallana scored the third in the 81st minute.
This is the first time that Liverpool have reached a final on the European stage since the 2006-07 Champions League.
The win was special for manager Jurgen Klopp who has guided his team into the final in his first season as manager.
Liverpool will now meet another Spanish side, Sevilla, in the final in Basel on 18 May.
The double defending champions made it to yet another final after beating Shakhtar Donetsk 3-1 at home for a 5-3 aggregate.
Going into the second leg with the match tied at 2-2, Kevin Gameiro gave the hosts the perfect start he opened the scoring in just nine minutes. Sevilla’s lead was cancelled by Shakhtar striker Eduardo who scored in the 44th minute.
However, Shakhtar’s hopes were short-lived as Sevilla took the tie away from Shakhtar through a second goal by Gameiro who scored just two minutes into the second half.
Mariano sealed Sevilla’s win with the third goal in the 60th minute. Sevilla could make history if they claim a hat-trick of Europa League titles.
They have won the competition four times in the last 10 years and can secure their place in next season's Champions League with victory over Liverpool.