"I hit a fastball on the inner half," Moustakas said. "It was a good pitch, I wasn't trying to do too much and I was able to drive it out of the ballpark. But we're not looking for results right now, we're just looking for the process."
The Royals took an early lead when Moustakas drove in Omar Infante with a single to center in the first. Kansas City extended its lead to 2-0 in the fourth on Pedro Ciriaco's RBI single.
Both of the runs came off D-backs starter Patrick Corbin, who allowed five hits and walked two while striking out four in four innings.
Royals starter James Shields was impressive -- allowing one hit while striking out three over three scoreless innings.
"Today I felt really good out there and felt my delivery was solid," Shields said. "I've eased my way into Spring Training every single year and we try to be real methodical. You've got to listen to your body as a pitcher ... and today was a good progression."
The day was not as successful for Kansas City reliever Chris Dwyer.
Dwyer came on in the fourth and the D-backs greeted him with a four-run rally to take a 4-3 lead.
Eric Chavez had an RBI single during the inning while Mark Trumbo plated a run with a double to center. Didi Gregorius drew a bases-loaded walk.
The final run of the inning scored when Corbin's groundout to first scored Trumbo.
Up next for the D-backs: The D-backs will host the A's on Thursday with a 1:10 p.m. MT start at Salt River Fields. Trevor Cahill will make his second spring start. Cahill was recently named by manager Kirk Gibson to start the team's second game of the regular season against the Dodgers in Sydney, Australia. Catcher Miguel Montero is scheduled to start behind the plate for the third straight game, a first for him this spring as Gibson works to stretch out his starters.
Steve Gilbert is a reporter for MLB.com. Read his blog, Inside the D-backs, and follow him on Twitter @SteveGilbertMLB. This story was not subject to the approval of Major League Baseball or its clubs.