The result meant the Canaries stretched their unbeaten run to four Championship games.
Martin appears before Swaffham Magistrates Court on Tuesday after being arrested and charged with common assault over the Bank Holiday weekend.
But his strike capped a fine comeback for the Canaries after Barnsley had threatened to win at Carrow Road for the first time in 73 years.
Norwich dominated the first half but the visitors snatched the lead against the run of play in stoppage time when summer signing Jay McEveley headed home Kieran Trippier’s free-kick.
However, the 63rd-minute introduction of substitute Anthony McNamee turned the game in Norwich’s favour.
Within eight minutes his cross was turned into his own net by Stephen Foster before the winger played his part in the winner 10 minutes from time.
His delivery caused havoc in the Barnsley defence before Adam Drury found Martin, who made no mistake from 12 yards for his first league goal of the season.
Norwich manager Paul Lambert was forced to make two changes to the side which drew 1-1 with Nottingham Forest before the international break.
England Under-19 international Declan Rudd replaced John Ruddy while Simon Lappin came in for Andrew Surman. Recent loan signing Leon Barnett made his home debut.
For Barnsley, Nathan Doyle replaced Hugo Colace (calf) in the only change to the team which beat Middlesbrough 2-0 at Oakwell, with former City defender Jason Shackell captaining the side.
Norwich had the first sight on goal in the 10th minute but Martin could only find the Barnsley wall with his 20-yard free-kick after Korey Smith had been fouled.
The home side continued to press and from a Lappin corner, captain Grant Holt could only stoop to head wide before Martin had another effort in the 24th minute but was wayward with his finish from 20 yards.
Barnsley were then grateful to goalkeeper Luke Steele for keeping them on level terms in the 28th minute.
Holt’s cross found Smith, whose turn and shot was superbly parried by Steele before Barnsley eventually cleared their lines after a scramble in the six-yard box.
Moments later a long-range strike from Martin was easily gathered by Steele as Norwich continued to search for a breakthrough.
Having been on the backfoot for the majority of the half, Barnsley took the lead in first-half stoppage time with Trippier’s free-kick being headed home by McEveley from six yards – his first goal for the club.
Buoyed by that goal, Barnsley came out attacking at the start of the second half and Adam Hammill curled an effort from 12 yards wide.
But after Russell Martin fired over for the hosts, the equaliser arrived in the 71st minute, although there was a bit of fortune about the goal as McNamee saw his cross go into the net off the luckless Foster.
Lifted by that goal, Norwich piled forward and Smith let fly from 20 yards which cleared the bar before Chris Martin struck.