FOXBORO, Mass. -- The New England Patriots opened their preseason with a 17-3 victory over the Carolina Panthers at Gillette Stadium on Thursday night.

It was a respectable defensive effort from New England, which finished with five sacks of third-string quarterback Jack Plummer (11-for-21, 86 yards). On the opposite side of the ball, though, it was a tough-to-watch performance from the offense, which punted on eight of its first nine drives.

Jacoby Brissett (0-for-3) and Drake Maye (2-for-3, 19 yards) each only played one offensive series before Bailey Zappe and Joe Milton III spent the rest of the night behind center.

Here are three studs and three duds from Patriots-Panthers:

Story continues below advertisement

STUDS
Jeremiah Pharms Jr.
Pharms was arguably the biggest winner of the night for the Patriots, whose defensive front consistently pressured the Panthers. Pharms, who spent the previous two seasons on the practice squad, was disruptive on the interior. He beat Panthers offensive tackle Ricky Less for a sack and forced fumble in the first quarter and later drew a pair of holding penalties. The Patriots will need depth pieces to step up on the defensive line given the impending absence of Christian Barmore.

Joe Milton III
The rookie quarterback entered the game with four minutes left in the third quarter and played the rest of the way. He led the Patriots to two scoring drives and completed four of his six passes for 54 yards, including a 38-yard touchdown to depth receiver JaQuae Jackson. Milton also showed off his athleticism and mobility with a scramble that went for a 12-yard gain, but covered far more than 12 yards. He joked he hadn't done that in quite some time. Gillette Stadium erupted on the chain-moving run.

    What do you think?  Leave a comment.

Kayshon Boutte
Boutte hasn't seen much work with the top offense(s) in training camp practices, but maybe that could change? Boutte figures to be competing for a depth spot in the receiver room along with Jalen Reagor, Tyquan Thornton and JuJu Smith-Schuster. Boutte finished with the most receiving yards of any of them as he caught three of the six balls thrown his way for 53 yards with at least one drop. Boutte's s nicest catch of the day came as he out-leaped Panthers cornerback D'Shawn Jamison for a 28-yard catch from Zappe. It set up the Patriots first touchdown.

DUDS
Bailey Zappe

Zappe saw more snaps than any other quarterback despite seeing the fewest snaps in 11 training camp practices. Zappe concluded his night 12-for-20 for 108 yards. The Patriots punted on six of the seven drives with Zappe behind center, his lone touchdown drive benefitting from a better catch (Boutte) than throw.

Story continues below advertisement

Mitchell Wilcox
Wilcox is fighting for New England's third tight end spot behind Hunter Henry and Austin Hooper, but didn't look the part in the preseason game. Wilcox caught one of the four balls thrown his way for five yards and committed a first-quarter penalty to put the Patriots behind the sticks.

Offensive line
Who would have thought, right? The Patriots' offensive line has been a glaring weakness all camp. While New England seemingly has the interior locked down with left guard Sidy Sow, center David Andrews and right guard Mike Onwenu, the bookends still are plenty questionable. It was evident early during pass protection, and Patriots head coach Jerod Mayo hinted the second-string line is a reason Maye didn't play as much.

Featured image via Brian Fluharty/USA TODAY Sports Images