Messi followed up his heroics against Real Madrid on Sunday with a brilliant brace.
The Argentina international opened the scoring in the 12th minute, gliding through the Osasuna defence before calmly slotting past Salvatore Sirigu.
Much-maligned midfielder Andre Gomes doubled their lead 18 minutes later, side-footing past Sirigu after Ivan Rakitic's cross had caused chaos in the box.
Barcelona were pegged back by Roberto Torres but Gomes struck against to restore their two-goal cushion.
Lionel Messi scored twice as Barcelona battered Osasuna Barcelona transfers: Ten worst signings of all time Wed, April 19, 2017
Click through the gallery to reveal the 10 worst Barcelona signings of all time
Play slideshow GETTY 1 of 10
10. Geovanni – Cost €18m, scored 1 in 28 before falling out with the boss
Messi made it 4-1 just past the 60th minute, bagging his second goal of the game with a curling strike.
Paco Alcacer, another player who has been criticised this season, added a fifth just three minutes later from close range.
Barcelona were awarded a penalty after former Arsenal star Fran Merida tripped Denis Suarez in the box.
Ex-Liverpool midfielder Javier Mascherano then converted the spot-kick for his first ever Barcelona goal.
Paco Alcacer scored twice for Barcelona
The rout was completed late on with Alcacer adding his second of the game to make the scoreline 7-1.
The win means Barcelona now sit three points clear at the La Liga summit.
Real can restore parity when they face Deportivo Alaves later today – with manager Zinedine Zidane making nine changes from Sunday's El Clasico defeat.
Cristiano Ronaldo and Toni Kroos have both been rested for the trip.