CHICAGO -- There were some shaky moments early on. After that, Freddy Garcia was at his best.
Scott Podsednik reached base five times, scored three runs and robbed Tim Salmon of a home run leading off the seventh as the White Sox won for the ninth time in 11 games. Thome finished with three hits and four RBI, and Joe Crede and Jermaine Dye also hit solo homers.
The Angels have lost 10 of their last 12 games. They have only three runs and 11 hits in their last three games, all losses.
Garcia (5-1) won his fifth straight decision, allowing a run in eight innings. He gave up five hits -- four for extra bases -- in the first three innings, before shutting down the Angels.
"They scored a lot of runs for me, and I went out there aggressive and threw a lot of strikes," said Garcia, whose ERA dropped from 5.45 to 4.64. "I was hitting all my spots."
Kevin Gregg (2-1) allowed seven runs and nine hits in 2 2/3 innings in his second start for Los Angeles. He allowed a run in the first and came apart in the third, when the White Sox sent up 12 batters and scored a season-high six runs.
"They took advantage of a couple of mistakes I made, but they also put the bat on good pitches," Gregg said. "With them adding Jim Thome here, it just adds a little bit more confidence to some of the guys."
After one-out singles by Podsednik and Tadahito Iguchi, Thome hit the first pitch from Gregg about halfway up the stands in right for his 14th homer and a 4-1 lead.
After Paul Konerko flied to center, Dye homered just inside the right-field foul pole on a 3-1 pitch. It was the seventh home run for Dye, who had not played since leaving the game at Cleveland on May 2 with a tight left calf.
A.J. Pierzynski doubled and scored on Crede's single to make it 6-1. After another single by Juan Uribe, Gregg hit Brian Anderson to load the bases. Esteban Yan relieved and walked Podsednik before striking out Iguchi.
Uribe broke a 5-for-48 skid with three hits, including two doubles.
For Gregg, it was a sharp contrast from his previous outing, when he held Detroit to a run in seven innings. But for the Angels, it was more of the same against the White Sox. Their freefall started with a three-game sweep by Chicago in Anaheim late last month.
Garcia, meanwhile, seems to be settling in after a rough start to the season.
He pitched for Venezuela in the World Baseball Classic, then got hit hard early on. Cleveland pounded him for seven runs in four innings in his first start, and his ERA was 7.80 after his third outing, when he lasted five innings against Toronto. But he has lasted at least six innings and not allowed more than three runs in his last four starts.
Tuesday's start was Garcia's second straight without a walk.
"You look at Freddy and the way he started the season, and you can say, 'Wow,"' manager Ozzie Guillen said. "I don't want to blame the (World Baseball Classic), but ... he's the type of guy who needs those days."
"When you miss three weeks of spring training for the World Baseball Classic," said Garcia, who pitched for his native Venezuela, "you're not really ready. You go hard (earlier). In spring training, you take it slow and get ready step by step. That was not my case."
The White Sox continued to roll, even though the defending World Series champions suffered a significant loss before the game when right-hander Jose Contreras went on the 15-day disabled list with a pinched nerve in his right leg.
Perhaps baseball's best pitcher this season at 5-0 with a major league-low 1.41 ERA, Contreras will miss at least two starts. The White Sox hope to have him back for their three-game series against the crosstown rival Cubs beginning May 19.
Iguchi has a nine-game hitting streak. ... Knuckleballer Charlie Haeger is expected to be called up from Triple-A Charlotte and start for Contreras against the Los Angeles Angels on Wednesday. ... Los Angeles' Garret Anderson went 1-for-3 to end an 0-for-12 streak. And Juan Rivera, activated from the DL on Monday, ended an 0-for-11 slump with a single leading off the second. ... Angels 1B Casey Kotchman, recovering from a virus, went on the 15-day disabled list and IF Dallas McPherson was called up from Triple-A Salt Lake on Tuesday. ... An MRI on Darin Erstad's sore right foot revealed no major structural damage. He has bone spurs and a bone bruise but will not need surgery. Erstad went on the DL on Monday.