The bullpen came up big in backing up the four-inning outing by starter Dan Wright, who put the Sox down 4-0, giving up a two-run homer to Torii Hunter off the foul poll in the first -- a close call that ended in Jerry Manuel getting ejected -- and two more coming on four hits in the third.
The White Sox cut the deficit to 4-2 with Thomas' first two-run homer, which was just out of the reach of Hunter over the wall in center field. Twins' starter Kyle Lohse went five innings, giving up five runs.
Rick White then came in to throw two-plus innings, which gave the Sox enough times to come back to tie it with a Brian Daubach fourth-inning two-run homer and take the lead with a Magglio Ordonez RBI-single in the fifth.
White was pulled after a leadoff double in the seventh. The run came around to score off Damaso Marte two batters later on a soft RBI-single just out of the reach of a diving Everett in center
Marte went on to pitch two scoreless innings, with Tom Gordon throwing an additional two. Billy Koch started the 11th, and after recording the first two outs, gave up a triple to Luis Rivas and RBI-single to Bobby Kielty.
With two outs in the 11th, Konerko pinch-hit for Daubach with Eddie Guardado on the mound and blasted his fourth homer of the season.
In the 12th, Roberto Alomar walked, setting up Thomas' two-run, game-winning homer. Thomas now has 20 homers on the season and 46 RBIs.
Roberto Alomar went 1-5 with a walk and an error, while Everett went 0-4 with a walk.
The Sox will have Thursday off before starting a three-game set against the Devil Rays on Friday at 4:15 p.m. CT, with Bartolo Colon going up against Victor Zambrano. The game will be televised on Fox Sports Net Chicago.