Christian Pulisic a deschis scorul în minutul 34 cu o execuție direct din corner, portarul oaspeților având golul pe nota de plată.
Echipa vizitatoare a rămas în inferioritate numerică din minutul 40, Raphael Onyedika fiind eliminat pentru un fault asupra lui Reijnders.
Inițial, nigerianul primise doar cartonașul galben, dar la intervenția VAR arbitrul a revenit și i-a acordat roșu direct.
Club Brugge a restabilit egalitatea la șase minute după pauză prin Kyriani Sabbe cu un șut din interiorul careului în dreapta lui Mike Maignan.
După doar zece minute Milan a revenit la conducere prin Tijjani Reijnders, olandezul stabilind scorul final în minutul 71, marcând din pasa lui Chukwueze.
Milan a mai avut și un gol anulat la Camarda, cel mai tânăr jucător italian care a evoluat în Liga Campionilor, la 16 ani și 226 de zile.
În primele două etape, Milan pierduse acasă cu Liverpool (1-3) și în deplasare cu Leverkusen (0-1).
Pentru rossoneri urmează duelul din deplasare cu Real Madrid, formație care a întors spectaculos pe teren propriu cu Dortmund de la 0-2.