Lille OSC delivered a commanding performance on Ligue 1 matchday 29, sweeping aside Toulouse FC 4–0 away in a one-sided encounter on 12 April 2026.
The visitors broke the deadlock in the 23rd minute. Thomas Meunier finished a move created by Hákon Haraldsson, giving Lille a deserved 1–0 lead and setting the tone for the afternoon.
The match tilted further in Lille’s favour shortly after the interval. In the 48th minute, Toulouse defender Mark McKenzie was shown a red card, leaving the hosts to play the remainder of the game with ten men. Lille capitalised quickly: Romain Perraud struck in the 50th minute to double the advantage.
Just five minutes later, Matias Fernandez-Pardo added a third. The midfielder converted after being set up by Benjamin André in the 55th minute, effectively ending any realistic hope of a Toulouse comeback.
Toulouse made a flurry of substitutions around the hour mark in an attempt to stabilise the game, introducing Charlie Cresswell, Alexis Vossah and Warren Kamanzi, and later Jacen Russell-Rowe and Santiago Hidalgo. Lille responded with changes of their own, including the introduction of Olivier Giroud and Ethan Mbappé.
Giroud rounded off the scoring in the 88th minute from the penalty spot, sealing a 4–0 victory for Lille. Toulouse’s frustration was reflected in further cautions for Emersonn on 63 minutes and Dayann Methalie on 80 minutes.
This result marks a resounding away win for Lille in the Ligue 1 regular season, while Toulouse endure a difficult afternoon marked by a red card and a succession of disciplinary issues. More detailed match statistics, such as possession and shots, are not available in the current data.
Full match details: Toulouse FC vs Lille OSC.
Ligue 1 Standings
| # | Team | P | W | D | L | GF | GA | GD | Pts | Form |
|---|---|---|---|---|---|---|---|---|---|---|
| 1 |
Paris Saint-Germain FC
|
31 | 22 | 4 | 5 | 70 | 27 | 43 | 70 | D W W L |
| 2 |
Racing Club de Lens
|
31 | 20 | 4 | 7 | 61 | 33 | 28 | 64 | D D W L |
| 3 |
Olympique Lyonnais
|
32 | 18 | 6 | 8 | 52 | 34 | 18 | 60 | W W W W D |
| 4 |
Lille OSC
|
32 | 17 | 7 | 8 | 51 | 35 | 16 | 58 | D W D W W |
| 5 |
Stade Rennais FC 1901
|
32 | 16 | 8 | 8 | 56 | 46 | 10 | 56 | L W W W W |
| 6 |
AS Monaco FC
|
32 | 16 | 6 | 10 | 56 | 48 | 8 | 54 | W D D L W |
| 7 |
Olympique de Marseille
|
32 | 16 | 5 | 11 | 59 | 44 | 15 | 53 | L D L W L |
| 8 |
RC Strasbourg Alsace
|
31 | 13 | 7 | 11 | 50 | 41 | 9 | 46 | L W L W |
| 9 |
FC Lorient
|
32 | 10 | 12 | 10 | 44 | 49 | -5 | 42 | D L W L D |
| 10 |
Toulouse FC
|
32 | 11 | 8 | 13 | 45 | 45 | 0 | 41 | W D L L |
| 11 |
Paris FC
|
32 | 10 | 11 | 11 | 44 | 47 | -3 | 41 | W L W W D |
| 12 |
Stade Brestois 29
|
31 | 10 | 8 | 13 | 41 | 51 | -10 | 38 | L D D L |
| 13 |
Angers SCO
|
32 | 9 | 7 | 16 | 27 | 46 | -19 | 34 | L L D L D |
| 14 |
Le Havre AC
|
32 | 6 | 14 | 12 | 30 | 43 | -13 | 32 | D D D D D |
| 15 |
OGC Nice
|
32 | 7 | 10 | 15 | 36 | 58 | -22 | 31 | D D D D L |
| 16 |
AJ Auxerre
|
32 | 6 | 10 | 16 | 30 | 43 | -13 | 28 | W L D D D |
| 17 |
FC Nantes
|
32 | 5 | 8 | 19 | 29 | 51 | -22 | 23 | W L L D D |
| 18 |
FC Metz
|
32 | 3 | 7 | 22 | 32 | 72 | -40 | 16 | L D L L D |