“They’ve been resilient for a very long time,” Seattle Coach Brian Schmetzer said. “But I think at the beginning of this year, when we started off in preseason, we knew we had a good team, a veteran team. The reasons for the slow start we can pick apart. But I think the base was always there. They found a way to win and persevere in tough situations.”

The below-freezing temperature did little to quiet the raucous crowd at BMO Field, announced at 36,045, with tickets having sold out just minutes after going on sale. But the cold did affect the quality of the game, which was full of errors and lacked a consistent flow.

Toronto, which had scored a staggering 17 goals in its first five games of the playoffs, was in complete control early in Saturday’s game, with the star forward Sebastian Giovinco creating several good opportunities. The team had a golden chance in just the second minute of the game when a free kick delivered by Michael Bradley set up a combination between Altidore and Giovinco, with Altidore sending the final shot just wide.

The game quickly became more physical, but Toronto, also seeking its first M.L.S. Cup, continued to dominate. In the 15th minute, Giovinco played a ball into the box that allowed Altidore to set up Jonathan Osorio for a shot, but Frei made a nice save. In the 30th minute, a Justin Morrow cross again set up Altidore, but his header again did not get past Frei.

Seattle’s best moments in regulation — and there were not many — came when it tried to counterattack through its forward Jordan Morris, the league’s rookie of the year. But each time, Toronto’s defense was able to break up the play before Seattle could put an actual shot on the net.