And it came from two implausible heroes who changed monthlong boos into cheers.
With Soto's home run tying the score in the eighth inning and Soriano parachuting a single for the winning RBI in the ninth, the Cubs sent a shock through the Sox with a come-from-behind 6-5 victory.
The Cubs scored five runs in the final two innings -- half as many as they had scored in their previous six games -- to split the rain-shortened two-game series before the teams meet again next week on the South Side.
It will be hard to imagine more energy than the crowd of 40,467 created at Wrigley Field during the final two innings -- no matter which side they were cheering -- as the Cubs overcame a four-run deficit.
"This will do a lot for our confidence, just knowing that we're not out of the game," said Cubs first baseman Derrek Lee, who hit a three-run, two-out homer just before Soto's solo shot in the eighth. "To lose this game would have been tough."
All four eighth-inning runs off reliever Scott Linebrink were unearned because of an error by second baseman Chris Getz, who had been the Sox hero until then with two hits, an RBI and a run-saving defensive stop.
"In baseball, there are so many downs, so much failing going on, that you have to take positives and move forward," Getz said. "That's all you can do."
While it was a disheartening loss for the Sox and loser Matt Thornton, it was an uplifting victory for the Cubs, who had lost five of their previous six games and reached .500 for the 13th time this season.
"It's big because we scored some runs," said Reed Johnson, who started the Cubs' ninth with a pinch-hit single. "If it was another 2-1, 1-0 victory, we'd still be thinking our offense hasn't shown up yet.
"Nobody's happier for [Soriano] than the other 24 guys in this clubhouse."
Soriano came into the game hitting .225, including .148 in June, and Soto .217. And the fans made sure both players knew of their displeasure.
"They boo because they're not happy, so that keeps me in the game to do something to make them happy," Soriano said.
The late-inning uprising erased a second straight near-perfect game for the Sox, who received seven one-hit innings from starter Gavin Floyd.
Floyd left with a 3-1 lead, helped by Alexei Ramirez's two-run homer in the seventh, his second home run in two days and one that could have made a loser of Cubs starter Carlos Zambrano.
Soriano, who was 0 for his last 15 with runners in scoring position, changed all of that.
"Floyd threw the ball absolutely well," Sox manager Ozzie Guillen said. "The reason they won is because Linebrink didn't throw the ball over the plate, and when he did, they hit it for a home run."
Soriano contributed during the eighth with a single to help set up Lee's home run.
In the ninth, Johnson led off with a single against Thornton, was bunted to second by Andres Blanco and, after Aaron Miles grounded out, sprinted toward home as Soriano lofted a pitch into short right field.
"I had my head down," Johnson said. "I was listening [for the crowd roar] to see if the ball had fallen in. It was an awkward high-five at home plate because I was going too fast and [ Ryan] Theriot wouldn't get out of my way."
The Cubs can be forgiven because they haven't had many reasons to celebrate lately. And certainly not in more important games.
Buy Chicago Cubs tickets