A brace from Lucas Ocampos (first, 58th minutes) and a solitary strike from former West Ham star Dimitri Payer (14th minute) secured the win for Marseille.
Aritz Aduriz pulled a goal back for Bilbao after converting from the penalty spot on the stroke of half-time.
In Italy, Ukrainian side Dynamo Kyiv forced Lazio to a 2-2 away draw.
Ciro Immobile (54th minute) and Felipe Anderson (62nd minute) had given Lazio a 2-1 comeback lead after Viktor Tsigankov had opened scoring for Dynamo.
But with 11 minutes remaining, Junior Moraes equalised for Dynamo to end the game 2-2.
And in other Europa League games, RB Leipzig playing at home edged Zenit St. Petersburg 2-1 and Sporting Lisbon overcame Viktoria Plzen 2-0 in Portugal.
All the return legs will be decided next Thursday.
Europa League round of 16 first-leg results:
Marseille 3-1 Athletic Bilbao
Lazio 2-2 Dynamo Kyiv
Sporting Lisbon 2-0 Viktoria Plzen
RB Leipzig 2-1 Zenit