Boston was playing without its top two defensemen after Charlie McAvoy was a last-minute scratch and joined Hampus Lindholm on the sideline, but the Bruins twice rallied for their second straight playoff win.
Patrice Bergeron had a goal and two assists, and David Pastrnak had one of each for the Bruins. Rookie Jeremy Swayman made 23 saves.
Brett Pesce and Jordan Staal scored for Carolina, and Antti Raanta returned to stop 23 shots for the Metropolitan Division champions.
Game 5 of the best-of-seven series is Tuesday night in Carolina, and Game 6 will be in Boston on Thursday.
Pesce gave Carolina the lead six minutes into the game, the fourth straight time the Hurricanes have scored first — seventh, if you count their three regular-season wins over Boston. But Bergeron tied it with four minutes to play in the first period when he slid a loose puck through Raanta’s legs.
Just 33 seconds into the second period, Nino Niederreiter backhanded it out to Staal for the one-timer that gave Carolina a 2-1 lead.
In the last 90 seconds of the second period, with Boston on a power play, Marchand backhanded the puck into Raanta, and it wound up in the crease just sitting there for Jake DeBrusk to clean up.
Hurricanes coach Rod Brind’Amour challenged for goalie interference, but the call stood. That gave Boston another power play, and it became a 5-on-3 when Sebastian Aho was given a double-minor for high-sticking Bergeron in the slot.
Boston still had 44 seconds on the 5-on-3 and 2:58 after that on the double-minor when the third period started. With one second left in the two-man advantage, Marchand wristed one into the net to give Boston its first lead of the day.
Pastrnak added an insurance goal five minutes later, and Marchand put in an empty-netter.
Raanta left in the first period of the second game after a collision with Pastrnak. Pyotr Kochetkov relieved him and picked up the win in Game 2 as the Hurricanes took a 2-0 lead in the series.
But the Bruins beat Kochetkov 4-2 on Friday night, and Raanta was back for Game 4.
Marchand’s first goal was so close to the end of the 5-on-3 that the officials had to check whether the first penalty had expired. At issue was whether the Bruins would get the full advantage of the double-minor to Aho (if the goal came at 43 seconds), or if it would be chopped down to the last 2 minutes (if the goal came at 44 seconds).
After a review, it was determined to come at the 43-second mark of the period, meaning Boston still had 2:53 of a power play. That was erased by a high-sticking call on Matt Grzelcyk about two minutes later.
McAvoy was scratched less than an hour before the opening faceoff and placed in the NHL’s COVID-19 protocol. Josh Brown, who appeared in six games for the Bruins after joining them from Ottawa at the trade deadline, was active instead.
A 24-year-old Boston University product who was taken in the first round of the 2016 draft, McAvoy had career-highs of 10 goals and 46 assists, leading all Bruins defensemen in scoring and with an average of 24 minutes, 39 seconds on the ice per game.
Lindholm, the team’s top trade deadline acquisition, left Game 2 showing signs of a concussion and has not returned.