Craig Mitchelldyer/Portland Timbers
In December of last year, Atlanta United beat the Portland Timbers 2-0 in front of more than 70,000 at Mercedes-Benz Stadium to win MLS Cup 2018.

The rematch, played nearly eight-and-a-half months later on beautiful Sunday night at Providence Park, was, in many ways, worth waiting for: an intense, exhilarating, full-throttle battle that, ultimately, produced the exact same result. Atlanta 2, Portland 0.

There was no knocking the Timbers' effort. But, once again, Atlanta proved too much. This was another masterclass from the Five Stripes, who, after a rocky start to life under manager Frank de Boer, have now won six of their last seven games and look every bit the team that so dominated the league last season.

For Giovani Savarese's team, it was a humbling night — a reminder of just what separates them from the league's very best.

Right from the opening whistle, the two sides got after it: up and down the field, back and forth, with tackles flying in and chances aplenty.

It was tremendously entertaining soccer, and the Timbers, having closed out their Wednesday night win over Chicago so languidly, had the better of the opening exchanges.

In just the second minute, a Sebastian Blanco cross barely eluded Diego Valeri sliding in at the back post, soon after, Blanco found himself on the end of an excellent setup from Brian Fernandez on the left side of the box but flashed his shot over the bar.

But Atlanta's quality on the ball, especially in deep-lying positions, was already beginning to tell.

It won them several early corners, and, in the 13th minute, they'd convert one. Pity Martinez swung a cross to the near post that Josef Martinez met and stabbed towards goal where Steve Clark got a piece of it, but Julio Cascante couldn't clear it, and Leandro Gonzalez Pirez had a simple finish on the doorstep to make it 1-0.

The Timbers' response to going behind was bright, and they very nearly had an equalizer in short order when Valeri combined with Jeremy Ebobisse and fired a cross in front that Fernandez headed in, only to be judged fractionally offside by the assistant referee.

Several minutes later, Ebobisse and Valeri combined again — a sharp first-time layoff from the young forward setting the captain up for a low, dipping shot that Brad Guzan deflected wide for a corner.

The game continue to pulsate. Referee Armando Villareal increasingly found himself at the center of attention, brandishing four yellow cards before the end of the half, but turning away a ferocious penalty shout from the visitors when Bill Tuiloma's lunging tackle felled Pity Martinez on an Atlanta counter.

Steve Clark would be called into action before the half concluded as well, coming off his line to deny Ezequial Barco after Renzo Zambrano was caught in possession.

When Villareal did sound the end of the half, there was, from both sides, a mixture of relief and anguish. Both could easily have scored multiple goals, the fact that it was only 1-0, with all 22 who players who started the match still involved in it, was a near shock. The Timbers, at the very least, were in it.

Craig Mitchelldyer/Portland Timbers
But then, less than a minute after the restart, they conceded a backbreaking second goal. Julien Gressel was allowed to carry the ball from deep inside Atlanta's half past the midfield stripe and split the Timbers' center backs with an angled through ball for Josef Martinez.

The Venezuelan took the pass in stride, onside, and then, without hesitating, from 20 yards out, curled the ball into the top corner.

Steve Clark didn't move an inch. It was a filthy finish, borne of sheer confidence — Martinez's eleventh straight game with a goal, and given the situation, one of his most decisive.

There was never any chance that either side could sustain the ferocious pace they contested the first half at, and at 2-0, Atlanta was content to drop in, slow the game down, and look for chances to get their foot on the ball and possess.

The Timbers plugged away, trying to haul themselves back into the game, but Guzan stood tall — first to deny a swerving long range shot from Blanco, then, quite brilliantly, to stop a powerful header from Cascante.

As the game ticked into its closing stage, the Timbers, so full of verve and ambition early, faded away. Atlanta had absorbed their best shots going forward, and their defense hadn't been able to keep them afloat at the other end.

The final quarter of an hour came and went without incident. When the final whistle sounded, Providence Park was half empty. The scoreline was a repeat from MLS Cup; the Timbers handed their first multi-goal home defeat since July of 2017.

Darlington Nagbe, returning to Portland for the first time since his departing two winters ago, was magisterial. He posted game highs in successful dribbles and recoveries, and moved the ball as calmly and effectively as he ever did in his seven tremendous seasons with the Timbers.

He was a joy to watch — understated as ever, an island of calm, completely at ease in Atlanta's midfield, and completely at ease in the stadium in which he made his name. His battle with Diego Chara, who finished the night with an astounding 24 defensive actions, was worth the price of admission.

Nagbe wasn't the only one. In almost every position, Atlanta impressed. Their center backs were alert and mobile, they got the right balance from their wingers, and while neither found a final product, Pity Martinez and Barco were both dynamite in the open field.

It took de Boer a long while to figure things out after arriving in January, but there's no question right now that his team is on track to return to MLS Cup and face LAFC — the only other side in the league that can match them for talent and cohesiveness.

Not coincidentally, Atlanta and LAFC are the only teams to both beat and outplay the Timbers in Portland so far this year. The Timbers were in this game, and the quality of their top players ensures that they'll be in most every game they play, but the rest of their lineup got exposed.

Zambrano, preferred by Savarese to Cristhian Paredes in central midfield, wasn't up to the occasion, while the defense, without the injured available Larrys Mabiala to marshal it, coughed up a set piece goal and was gashed open time and again when the game became stretched. Even Fernandez struggled.

With Seattle looming on Friday, the Timbers must bounce back quickly. The big question going forward, though, is whether they have enough in the bottom half of their team to hang with MLS's best — especially on a night when their finishing isn't world class.

This wasn't a particularly promising showing. The Timbers, if they are to get another crack at Atlanta this year, still have a ways to go.

Craig Mitchelldyer/Portland Timbers