DENVER (AP) Jamie McGinn turned in the biggest play before the game even began, preparing a pregame meal for the cooking-challenged Nathan MacKinnon.

That pasta and chicken feast fueled the rookie MacKinnon to his first two-goal game and the Colorado Avalanche held off the San Jose Sharks 4-3 on Saturday for their third straight win.

''I think I've got to take a little bit of credit for that,'' McGinn joked.

McGinn chipped in with more than a meal, though, scoring a goal as well. The Avalanche jumped out to a 4-0 lead - and would need every one to dodge a comeback from San Jose.

Semyon Varlamov was at his best late in the game, making several big stops in the waning moments. He finished with 30 saves.

''Varly really bailed us out at the end there,'' MacKinnon said. ''We knew they're a resilient team. Next time we play them, if we get up, we've got to step on the pedal a little bit more.''

With his two-goal burst, MacKinnon moved past San Jose's Tomas Hertl for most points (26) among rookies. Hertl is sidelined after undergoing surgery earlier this week to repair damaged ligaments in his right knee.

Think about that rookie scoring race?

''A little bit, when it gets announced on the Jumbotron,'' MacKinnon said. ''But that's not my focus.''

These days, about the only thing MacKinnon can't do is cook. That's why McGinn stepped in.

MacKinnon usually lives in backup goalie Jean-Sebastien Giguere's basement. But Giguere had family in and MacKinnon stayed with McGinn.

''So I was cooking this morning,'' McGinn said. ''He said he doesn't know how to cook. We'll let that slide.''

The Avalanche have 56 points at the halfway point of the season, second-most in team history behind the 2000-01 Stanley Cup team. Still, there's plenty of season left as they try to return to the postseason after a three-year drought.

''Everybody is pushing hard,'' first-year coach Patrick Roy said. ''Everybody wants to give ourselves a chance to make the playoffs.''

Erik Johnson scored a fluke goal at 5:45 of the second when the puck bounced past Antti Niemi. That gaffe ended the goaltender's day and frustrated his coach Todd McLellan so much that he inserted backup Alex Stalock, who promptly allowed MacKinnon's second goal 14 seconds later to make it a 4-0 game.

That didn't make McLellan any happier.

''I've gone after our team in the new year, try to hold them very accountable,'' McLellan said. ''The goaltenders are part of that. Can't keep going toward the forwards or the `D' men.''

Joe Pavelski, Patrick Marleau and Logan Couture had goals for the Sharks.

Couture made it a one-goal game at 5:44 of the third when he knocked in a loose puck over a sprawled out Varlamov. The Sharks pulled Stalock with just over a minute left for an extra skater, only to struggle to get the puck into Colorado's zone. And when they did, Varlamov turned it aside.

Jan Hejda was whistled for interference with 4:02 remaining and Pavelski had a chance to tie it, getting open in the slot, but Varlamov stopped it with his chest, along with a rebound.

It was quite an entertaining second period for the fans who braved the chill and the snow to show up at the Pepsi Center.

The opening part of the period was all Avalanche as McGinn scored off a Sharks turnover, Johnson added another on a knuckleball of a shot that skipped past Niemi and MacKinnon knocked in a wrist shot to stake Colorado to a four-goal lead.

On the ensuing faceoff, Andrew Desjardins struck John Mitchell in the groin with his stick, setting off a scuffle at center ice. That seemed to fire up the listless Sharks, who quickly scored two goals to make it a 4-2 game at the end of the second period.

Desjardins said after the game he didn't hit Mitchell on purpose.

''It's more like when the guys come together and you try to push the guy's hands away and my stick I guess caught him in an unfortunate spot,'' Desjardins said.

Take anything away from the rally that fell short?

''We expended or used up a lot of energy to come within one,'' said McLellan, whose team plays in Chicago on Sunday. ''We're in the midst of a tough schedule, played guys down the stretch an awful lot and still (came up) short. We play tomorrow and we used up a lot of gas today.''

NOTES: Marleau also had two assists. ... Colorado F Paul Stastny contributed two assists as nine different Avs players had at least a point. ... At 18 years, 125 days, MacKinnon is the youngest player in franchise history to score two goals in a game.