[5][6] Barcelona took the lead in the 40th minute through Antoine Griezmann who finished from a rebound after neat interplay between Lionel Messi and Jordi Alba.
Athletic Bilbao replied immediately as Óscar de Marcos scored just two minutes later, assisted by Iñaki Williams, to make it 1–1 going to half time.
In the second half, Athletic Bilbao had a goal ruled out for a narrow offside in the 55th minute via VAR after Raúl García's header found the back of the net.
Griezmann got his second goal in the 77th minute from another Jordi Alba's cross to give Barcelona the lead again, before substitute Asier Villalibre's 90th-minute equaliser, a volley from an Iker Muniain free kick, forced the game into extra time.
Athletic Bilbao started well in the extra period and got their third, match-winning goal in the 93rd minute through a curling drive into the top corner from Williams, who was subsequently named man of the match.