The Cards began the game just one place behind the Saints in the Conference table but jumped ahead of City thanks to Sole's solitary strike after 62 minutes.
The winger finally breaking the deadlock after Saints' keeper Paul Bastock did his best to keep his side in it, with several smart saves.
It was a disappointing performance for City who, after the 3-0 win against Northwich on Saturday, made a bright start to the game.
Matt Hann, playing as a right wing-back in a 3-5-2 formation, forced a corner in the opening minute and from the resulting kick Lee Clarke was unlucky with a blistering drive which was deflected over by Sole.
The home side then had a great chance to take the lead when Paul Hakim, playing in his 50th game for the Saints, latched on to a through ball and raced down on goal. But just as the striker was about to pull the trigger he was denied by a last gasp tackle by Karl Murray.
City dominated the opening 15 minutes with Lee Clarke particularly lively. The Saints' striker going close with a thumping 20-yard drive which just went wide of the post on 14 minutes.
The away side were slowly out of the blocks but should have taken the lead on 16 minutes when Craig McAllister benefited from a slip by City's Gary Elphick.
From six yards out the Cards' striker poked the ball towards goal but Paul Bastock stretched out an arm to deny an almost certain goal.
McAllister was then denied by Bastock four minutes later, the City keeper blocking an effort by the lanky striker which rebounded to Sole, but his effort was cleared off the line by Hann.
City were forced to reshuffle the pack when defender Elphick was forced off with a hamstring injury. He was replaced by winger Adam Wilde, and the enforced change in formation to 4-4-2 seemed to upset City's flow as a lively first half ended goalless.
After playing much of the first half on the backfoot, Woking began the second period in much livelier fashion and should have scored inside the opening five minutes.
Neil Smith had a shot blocked by Bastock, who could only parry the ball back to the midfielder. But just as the Cards' captain looked to sidefoot the ball into an empty net, Lee Flynn saved the Saints with a magnificent challenge to deflect the ball wide for the away side's first corner of the game.
But the away side were not to be undone and took the lead on 62 minutes. Jon Nurse worked his way through on the edge of the box and fired in a shot which Bastock did brilliantly to save, but the ball ran into the path of Sole who made no mistake for the Cards.
The away side then almost doubled the lead five minutes later when McAllister was sent through clear on goal and fizzed in a right foot shot. But not for the first time on the net Bastock produced an outstanding save to tip the effort round the post.
The home struggled for long periods of the second half but Tom Davis was unlucky not to equalise when a volley from the edge of the box was deflected on to the roof of the net while Hakim went close late on.