Key events
Show key events only
Please turn on JavaScript to use this feature
With that, we’ll bid farewell to the 30th Major League Soccer season, which is about 27 more than the naysayers thought it would have. Thanks for following along with us today, and check back for more analysis.
David Beckham: “It’s a moment that I’ll cherish forever. … I promised back in 2013 that we were going to bring in the best players.”
He also praises Vancouver and admits to some nerves when the Whitecaps equalized and almost went ahead.
Updated at 16.54 EST
Peter Oh checks in (where’ve you been?): “As a Galaxy fan I don’t really care who wins this, but I find myself rooting for Vancouver. I admire the Barça Alumni Club as players, but the Miami model that they’ve unleashed on MLS is more self-serving than beneficial to the league, in my humble opinion. Having said that, I wouldn’t begrudge Messi Inc. a different trophy: The FIFA Pink Prize.”
Kurt Perleberg wants to know if Miami will next sign Cristiano Ronaldo. Yikes.
As mentioned at the start here, some great players have come into MLS and either struggled or simply not had the team around them to lift trophies. But none were as great as Messi. And no one had a better team around him, full of fellow Argentines and other players who’ve had world-class careers, along with complementary players who fit together exceptionally well.
ShareInter Miami win the 2025 MLS Cup final
Alba was in tears after the clinching goal. An emotional day here for some legendary players.
The scoreline flatters Inter, as Vancouver had the better of play for about 60 minutes. But you simply cannot give Messi chances to spring his teammates for 1-on-1 opportunities. And you have to finish. The shot that went off both posts – a shot that would’ve given Vancouver a 2-1 lead – will be a heartbreaking memory for Whitecaps supporters.
ShareGoooooaaaaallll! Miami 3-1 Vancouver (Allende 90+6)
And Javier Mascherano pulls a Jurgen Klopp, dashing out onto the field to celebrate.
Alba plays it forward to Messi, who expertly controls it off his chest and dinks it ahead to Allende, who times his run to perfection and converts. It’s over.
Updated at 16.44 EST
90 min +6: Segovia dives unconvincingly but gets back up to help win the ball back for Miami while the Whitecaps desperately chase.
90 min +5: Direct again for the Whitecaps, and they lose it again. Miami move forward, and Berhalter commits a needless foul. He gets yellow, and Miami can kill some time.
Updated at 16.41 EST
90 min +4: This is about as nervous as I’ve ever seen David Beckham, the Miami co-owner.
90 min +3: Messi is about 80 yards offside. Flag goes up.
Vancouver go direct, a bit too aimlessly. Need more composure here.
90 min +2: Messi and Berhalter race for the ball, and Berhalter falls down. He slows it down but keeps possession. In the end, it’s a poor ball forward from Busquets, strangely enough.
90 min +1: Nelson replaces Sabbi for Vancouver. For Miami, it’s Weigandt replaces the limping Ian Fray.
Seven minutes of stoppage time.
90 min: Someone in the crowd has a very loud whistle.
Blackmon is back.
Vancouver play into the box. Alba clears. His last game.
89 min: Vancouver is playing with 10 men right now because Tristan Blackmon went off for treatment and won’t be allowed back on just yet.
88 min: We’re in the “would you please mind putting the ball back in play before the ref adds 20 minutes?” phase of the game.
86 min: Yellow to De Paul after a midfield altercation.
Miami now four minutes plus stoppage time away from a 2-1 win.
Yellow to Laborda after the Vancouver player knocks down Segovia.
84 min: Good punch from Rios Novo, but Messi handles the ball as Miami try to break free, and it’ll be a free kick for the Whitecaps. They take it short and try to catch Miami napping, and it’s a nervy moment at the back for Inter.
83 min: At last, Vancouver will have a corner. Berhalter will take it.
82 min: Cabrera replaces Cubas for Vancouver.
81 min: Segovia presses but fouls. Whitecaps reclaim possession. But Miami’s midfielders are no longer quite as passive as they were earlier, and Vancouver’s passes aren’t getting them anywhere.
80 min: It’s a battle of turnovers now, dragging down the passing percentages for both teams.
78 min: Miami sub – Bright for Silvetti.
77 min: Another Vancouver turnover. They’ve been better for the most part but have suffered mightily for a couple of mistakes.
76 min: Miami do little with the corner, but they keep possession, and that’s better than a low-percentage shot.
75 min: Free kick to Messi, likely too far for a shot. But it’s a dangerous ball, and White heads it out for … get this … the first corner kick of the game.
73 min: De Paul and Messi are longtime national teammates. That combination is not a surprise.
Now Messi is down after a nasty foul from the frustrated Cubas, who gets yellow.
ShareGooooooaallll!!! Miami 2-1 Vancouver (De Paul 71)
And just like that, the game changes. Messi cleanly strips the ball from Cubas and taps it ahead to De Paul, who’s 1-on-1 with the keeper. Simple far-post finish.
70 min: Miami turnover, and Vancouver break. Miami defenders get back in place and again sag back, not pressing. You’d have to think the younger Whitecaps would be favored in extra time.
68 min: Vancouver subs – Gauld replaces the goal-scorer Ahmed, while Pupe replaces Priso. Pupe made no appearances after signing late in the regular season and has played four minutes in the playoffs. No pressure.
Priso sits down for Vancouver. The Whitecaps had readied some subs but may now wait to see if he can continue.
66 min: Another smart Whitecaps combination ends with Ahmed losing his footing. Miami start to break the other way, but Blackmon alertly … fouls. Yellow.
65 min: Busquets wins the aerial battle to clear Berhalter’s free kick.
64 min: Free kick for Vancouver off a handball, and we have a tangle of bodies after the whistle.
62 min: OFF BOTH POSTS! Sabbi hits the inside of one post, and it bounds across to hit the other. Falcon intervenes on the rebound, and it hits the post again.
Vancouver in championship form here.
ShareGoooooaaalll!!!! Miami 1-1 Vancouver (Ahmed 60)
The ball is played into White, who attracts a lot of attention and spots Ahmed across the top of the box. Ahmed shoots near post, surprising Rios Novo. The Miami keeper gets part of it, but the ball trickles across the line.
Game on? Game on!
59 min: The passing combination was there for Vancouver, but they just can’t complete it.
Vancouver keep getting closer.
58 min: Müller has a shot blocked. Berhalter down in the area somehow. Messi somehow going the other way with the ball. More bodies on the turf. We’re at warp speed here.
Ben Morton writes: “This is my first MLS game, incredible energy from the players and a great atmosphere in the stadium coming through the screen. Utterly compelling. Hoping to see Messi lift the cup. Feels like there could be a Red Card out there for someone though…”
My money’s on Falcon.
56 min: CHANCE for Miami! Alba puts in a dangerous cross that’s punched out but not too far, and Messi has a free header from 15 yards out that goes tantalizingly wide.
Sub: Segovia replaces Rodriguez.
53 min: Another Vancouver free kick as Allen makes a wrestling move on Ocampo. Near the hash mark to denote 10 yards away from a corner kick. Tough angle, nothing comes of it.
But Ahmed collects it and slaloms through the Miami defense most menacingly before surrendering the ball. The Vancouver forward is asking some questions of this experienced Miami defense.
51 min: Vancouver have a kickabout unencumbered by any Miami pressure.
And … oh boy … Ahmed just went down just inside the penalty area. Falcon barks at him when he gets up. Probably neither a foul nor a dive – just incidental contact.
50 min: And someone in the stands can now claim they were nearly hit by a Sebastian Berhalter free kick.
48 min: Ahmed races past Falcon, who responds by knocking him down. Fischer responds by showing yellow, and Sebastian Berhalter might fancy his chances from here.
47 min: You know what I hate as a referee? People whining about who should have possession of the ball after it goes out of play when we’re all screened and can’t see who had it last. It’s a throw-in or a corner, not a Messi free kick from 22 yards out.
Speaking of free kicks from 22 yards out …
Second half is underway. Seems like much of the crowd is in line for concessions or the bathroom.
The MLS site says Vancouver has had 58.23% of the possession. They’ve had 250 passes to Miami’s 149. And they committed 14 fouls to Miami’s 10.
ShareHalftime: Miami 1-0 Vancouver
If you tuned in for Messi v Müller, you might be disappointed. But what we have instead is a pulsating final with an early goal that has made things open up.
45 min +2: It’s in the net – the top side of it. Flag goes up anyway.
But the good news for Miami is that they’ve weathered the Vancouver storm.
45 min +1: Silvetti hits the turf and tries to remember which body part he’s going to claim was injured in a collision. He gets the call. Seems dodgy.
Free kick to Miami, but probably outside Messi’s shooting range.
45 min: Yellow to Ocampo for throwing his body in front of Rodriguez with the ball traveling the side of the field. Not a half to remember for the Vancouver defender.
42 min: It’s one-way traffic now. Miami can’t get a sniff of the ball.
41 min: LEAPING SAVE by Rios Novo, who nearly falls back across his own line with the ball but alertly leans forward and holds the ball just shy of the target.
38 min: POINT-BLANK SAVE by Rios Novo after a Whitecaps free kick is recycled into the box by Müller. Ahmed had the goal at his mercy but put it right at the Miami keeper’s chest.
Updated at 15.27 EST
36 min: Everybody seems mad at our referee, Drew Fischer. Maybe they should quit banging into each other and/or falling down on the slightest touch.
Free kick Vancouver, but players are just falling like dominoes in the box.
Now another free kick, and a Miami player risks a card by pulling the ball away as Fischer approaches.
Yellow to someone on the Miami bench. It’s not head coach Javier Mascherano.
35 min: You know who has barely made a significant touch on the ball in this game? That’d be Thomas Müller.
34 min: CHANCE for Vancouver as White gets a head on the free kick, but it’s right at Rios Novo.