After both teams made a sharp start to the game in Salzburg, it was South Korea who created the first opportunity with Son Heung-min blazing over the crossbar from inside the penalty area.
Korea had matched Spain for the opening 30 minutes but an eight-minute spell before the break put paid to their hopes of a 17th successive match without defeat.
Spain's first goal came courtesy of a outstanding free kick from David Silva, who curled the ball into the top corner via the aid of the post, before Cesc Fabregas was perfectly placed to tap home into an empty net after a mix-up between Kim and Jang Hyun-soo.
Nolito made it three soon afterwards when he slotted the ball into the bottom corner after being found by Cesar Azpilicueta, and it gave the reigning European champions a commanding lead at half time.
Vicente del Bosque introduced a number of substitutes at the start of the second half but despite the changes, Spain extended their leader further in the 50th minute when Alvaro Morata headed home from a corner.
The scoreline was quickly becoming embarrassing for Korea and things got worse four minutes later when Nolito netted a fifth after Hector Bellerin got ahead of the goalkeeper to cut the ball back for the Celta Vigo attacker.
Pedro wasted a chance to score Spain's sixth before Korea ended the contest on the front foot as they looked for the consolation goal that their play deserved.
Spain were not finished at the other end, though, as Morata coolly slotted into an empty net after beating the goalkeeper to the ball close to the byline as Del Bosque's men wrapped up an emphatic win which sends a message to their rivals ahead of Euro 2016, which gets underway in just nine days time.