FC Barcelona started off at the Estadio de la Cerámica on the front foot, and had their first shot at goal before the two minute mark. Marc-André ter Stegen saved twice in quick succession as the hosts also looked to assert their authority early on in proceedings.
Within 15 minutes the Blaugrana were 2-0 up thanks to goals from Philippe Coutinho and Malcom, the latter also assisting his countryman in his first start since February 6. Coutinho then hit the post before Chukwueze brought Villarreal back into it on 22. The pace didn’t let up from either side in what was a frantic opening to the game.
As things eventually settled down, Barça dictated the rhythm though they were kept on their toes by the Yellow Submarine. The half ended as it had begun, with a Barça chance, Luis Suárez going close with a direct free-kick.
Karl Toko Ekambi had the locals on their feet at the start of the second half, equalising for Villarreal within four minutes of the restart.
The visitors poured forward again, looking for the opening to take the lead, but just two minutes after Lionel Messi had been introduced for Coutinho, Iborra put the hosts in front for the first time in the match.
As hard as the Blaugrana tried, the Submarine defence held firm. Ter Stegen pulled off one of the saves of the season before Villarreal hit Barça on the break with 11 minutes to go, Carlos Bacca adding a fourth.
But this Barça are nothing if not resilient, and Messi threw the Blaugrana a lifeline with another stunning free-kick on 89, his 14th goal against this opponent, a new League record.
It set up a grandstand finish and with the last kick of the match, a Luis Suárez special earned the Blaugrana a point, extending their unbeaten run over Villarreal to 20 games.