Catcher Tyler Flowers' home run in the fifth inning proved to be the game-winner.
That was the only mistake made by right-hander James Shields, who took the loss in his first start as the new leader of the Royals' pitching staff.
"Oh, man, dynamic pitching on both sides all day," Royals manager Ned Yost said. "Sale was phenomenal, James Shields was phenomenal. The difference in the game was one high changeup. That was it."
That pitch came on a 2-2 pitch as Flowers led off the White Sox fifth with a drive into the left-center-field seats.
"I had him with two strikes and I left a changeup up," Shields said. "Normally I get that down in the zone and get an out there. But today was a pitchers' duel and Sale did a great job on the other side."
That was the second straight changeup that Shields threw to Flowers.
"I threw a good one right before that and he swung and missed and I just left that one up," Shields said.
The Royals' big chance against Sale came in the third inning when Jeff Francoeur singled and, after an out, Alex Gordon walked and Alcides Escobar got an infield single to load the bases.
Up came right-handed slugger Billy Butler to face the left-hander with late-afternoon shadows making a tough Sale even tougher. Previously, Butler had hit Sale well, going 7-for-23 with three home runs.
"That's the situation you want, you want Billy up," Yost said. "And Sale painted him three sliders and changeups on the plate down and away, and that was impressive to me that in that situation he made the pitches he needed to make to get one of the best hitters in the American League out."
Butler fanned the cold, 44-degree air and Mike Moustakas popped out. End of threat.
"He threw me some really good pitches on that at-bat and maybe I expanded a little, but I thought those pitches were in the zone and broke late and that's how an All-Star-caliber pitcher gets you out," Butler said.
The Royals also threatened in the eighth. After two outs, Escobar singled and Sale was relieved by Nate Jones. Escobar stole second, Butler walked and a wild pitch moved Escobar to third. But left-hander Matt Thornton relieved Jones and struck out Moustakas.
Closer Addison Reed pitched around a walk to Eric Hosmer in the ninth and completed the shutout of the Royals, who led the Majors in hitting this spring with a .335 average and also had the most victories at 25-7-2.
"It was a cold day but the pitching was pretty darn spectacular on both sides," Yost said.
He was clearly pleased with the performance of Shields, who left after six innings and 102 pitches. He gave up eight hits but no walks and struck out six.
"That's exactly what I expected. We get farther into the year and he'd go back out. That's how good he was throwing the ball," Yost said. "But early I limit them to 100 pitches and it's like James, [Ervin] Santana, [Jeremy] Guthrie, take your 100 pitches and go to work."
Flowers' home run was the only extra-base hit by the White Sox.
"I went out there and tried to pitch my game. I gave up a few hits today that I made my pitch and they just kind of dumped them over the second baseman's head or the shortstop," Shields said.
"There was just one big hit and the rest were just kind of flares here and there," left fielder Alex Gordon said.
"If he throws like that every day," Butler said, "we're going to get him a lot of wins, hopefully."
The problem was that no matter how well Shields pitched, he's not going to win without runs.
"It's not the bright side for us because he pitched well enough to win and we didn't get any runs," Butler said. "We're excited about having Shieldsy out there every fifth day and we've got to give him some support."
Sale wasn't giving up anything and he had the Royals flummoxed.
"It was fun, it was exciting. It was everything I thought it would be and more," Sale said. "I thought I did a real good job of kind of collecting myself and not getting too amped up too early or too late and it ended up being a pretty good day."
He emphasized one point to the Royals. It's not Spring Training anymore.