Finland rolled to a 6-1 victory over Norway, scoring three goals in the opening period, and will face Canada Sunday with the winner of that one earning an automatic spot in the quarterfinals.
Sweden, meanwhile, took control of Group C with a 1-0 victory over Switzerland. A win for the Swedes over Latvia Saturday will give them first place in the group.
Teams in Group A, including Russia and the United States, had Friday off. The Russians and Americans will meet Saturday in an anticipated matchup that will likely determine the winner in their group.
Canada already had a 2-0 lead when Carter, of the Los Angeles Kings, scored goals 90 seconds apart early in the second period. He completed the hat trick with a score late in the second period that gave the Canadians a 5-0 lead.
Roberto Luongo of the Vancouver Canucks made 23 saves in the shutout.
Teemu Selanne started the first-period outburst for Finland, which outshot Norway 39-21.
Finland and Canada are both 2-0 with only their meeting on Sunday left to complete group play.
The three group winners plus the next best team make it to the quarterfinals. The remaining eight teams after group action will be paired for games that will determine the other four quarterfinalists.
Daniel Alfredsson scored a gift goal with 7:21 left in regulation to give Sweden its win over Switzerland.
Switzerland fell to 1-1, the same record posted by the Czech Republic after a 4-2 win over Latvia earlier Friday.
Overtime seemed to be a distinct possibility as time ticked down in a goaltending duel between Sweden's Henrik Lundqvist of the New York Rangers and Switzerland's Reto Berra of the Calgary Flames.
Berra, however, gave up a bad rebound on a soft shot from the right wing by Erik Karlsson. The puck drifted out to the top of the crease and Alfredsson was there to slam it into an open net.
The victory came after the Swedes had learned that captain Henrik Zetterberg would miss the rest of the Olympics with a herniated disk in his back.
Zetterberg scored during Sweden's 4-2 win over the Czech Republic on Wednesday. Zetterberg, of the Detroit Red Wings, missed 11 games in December due to back pain.
Detroit General Manager Ken Holland said Friday he did not expect Zetterberg to be ready when the NHL season resumes after the Olympics.
In the first Olympic game of the day, 41-year-old Jaromir Jagr scored one of the goals for the Czech Republic. The Czechs outshot Latvia 39-20.
Ray Liotta sues skin care company over use of likeness
NBC reportedly holds celebs hostage to Jimmy Fallon's show