Chicago left fielder Alejandro De Aza got the scoring started for the night, launching a solo homer to right field in the top of the first inning.
In the bottom half of the first frame, Royals designated hitter Billy Butler responded by hitting a two-run single to give Kansas City the early lead off Chicago starter Gavin Floyd (W, 10-10), who went seven innings, surrendering only two runs on five hits.
Although Royals starting pitcher Luke Hochevar (L, 8-14) was solid, going seven innings and allowing three earned runs on seven hits, the long ball doomed him on this night. In the sixth, White Sox second baseman Gordon Beckham tied the game with a solo shot to left field. Then right fielder Alex Rios blasted a third solo home run off of Hochevar in the seventh inning to give AL Central division-leading Chicago the 3-2 lead.
Reliever Addison Reed notched his 28th save of the season after getting the final two outs in the ninth.
With the win, the White Sox kept their lead in the division at three games over the Detroit Tigers.