There was a frenetic start to this contest in the Saudi capital, in a match pitting together the competition’s most successful side and a Los Rojillos outfit searching for their first major trophy.
Early chances came for both teams, as Frenkie de Jong teed up Ferran Torres in space, but the Spaniard smashed his effort wide. And down the other end, Jesus Areso’s curled attempt also just missed the target.
Ilkay Gundogan was looking to take the game by the scruff of the neck for Barca, and he played in Robert Lewandowski on the left, but Sergio Herrera was on hand to make a smart save.
The Gundogan-Lewadowski combination came into effect again, but the Poland captain failed to test Herrera with his header from the German’s cross.
Ante Budimir had not scored in each of his last seven games against Barcelona but came agonisingly close to doing so after taking Areso's pass into his stride before being thwarted by Inaki Pena. Both teams went in level at the break with Xavi forced into a change when Raphinha came off injured and Lamine Yamal entered the fray.
The Spanish champions eventually managed to break the deadlock from a familiar source. Lewandowski scored his 11th goal of the season across all competitions just shy of the hour mark by taking Gundogan’s pass into his stride and providing a clinical finishing past Herrera.
A VAR review looked at the challenge made by Andreas Christensen on Jose Manuel Arnaiz in the build-up to the goal, but the contact appeared to be minimal and Lewandowski’s effort rightly stood.
Herrera then denied Barca a second with a fine save to keep out Joao Felix’s strike. In contrast, chances were few and far between for Osasuna, but Budimir did manage to cut inside the Barca defence and saw his subsequent shot saved by Pena.
Lamine Yamal added extra gloss to the scoreline in stoppage time with a left-footed strike which squirmed past Herrera, in a chance engineered quite brilliantly by Felix.
This was the first time Barcelona had won by more than a solitary goal since thrashing Royal Antwerp 5-0 in a UEFA Champions League group stage fixture in September. Xavi’s side can now look forward to a tantalising clash against Real Madrid in Sunday’s final.
Flashscore Man of the Match: Ilkay Gundogan (Barcelona)