Marino scored the game-winner on a low wrist shot from the slot at 17:43.
Jesper Bratt and Erik Haula each had a goal and an assist, Nico Hischier had two assists and Vitek Vanecek made 35 saves for the Devils (25-20-3), who ended a two-game losing streak.
Jonathan Drouin had two assists, and Justus Annunen made 26 saves in his second start of the season for the Avalanche (32-15-4), who have lost two straight games for the first time since Dec. 7-9. Colorado lost 2-1 in overtime at the New York Rangers on Monday. MacKinnon had 29 points (13 goals, 16 assists) during his streak.
Mikko Rantanen scored on a snap shot from the slot after a turnover by Hischier to give the Avalanche a 1-0 lead at 1:23 of the first period.
Chris Tierney tied the game 42 seconds later with a deflection from the right circle at 2:05.
The Avalanche appeared to take a 2-1 lead 38 seconds into the second when Josh Manson scored from the high slot. But the Devils successfully challenged for goalie interference on Logan O'Connor.
Bratt gave the Devils a 2-1 lead with a shot from the left circle off a give-and-go on a 2-on-1 with Hischier at 3:49 of the second. Bratt extended his goal streak to three games.
Dawson Mercer pushed it to 3-1 when he poked in a loose puck to the right of Annunen at 6:47 of the second.
Colorado scored twice in 29 seconds during a 4-on-4 early in the third period.
Cale Makar pulled the Avalanche within 3-2 on a shot at the left post at 8:27, and Samuel Girard made it 3-3 with a slap shot from the top of the left face-off circle at 8:58.
Haula scored into an empty net with one second remaining for the 5-3 final.