Barcelona midfielder Denis Suarez was the star of the show as Spain's fringe players kept up their 100% record in the competition.
Serbia start well before Spain grow into the game
With Spain already through to the semi-finals after two handsome victories, Head Coach Albert Celades opted to change the entire team that defeated Portugal. Meanwhile, Serbia were playing for pride after just one point from their group games thus far.
Despite Spain's dominance in their opening games, they have looked susceptible at the back on occasions. That weakness was present again as defender Milos Veljkovic scooped a flick-on from a corner over the crossbar when he should have opened the scoring from close range.
Spain began to settle into the game and see more of the ball but a slow start becoming synonymous with them during this tournament was evident oncemore. Nemanja Radonjic played a lovely weighted ball into the path of Uros Djurdjevic, only to rush his effort and hit is straight at Pau Lopez.
It took 18 minutes for Spain to break open the Serbian backline and it was only a smart stop from Filip Manojlovic that kept the defending champions at bay. Diego Gonzales played through Carlos Soler but the Serbian goalkeeper spread himself wide to block the effort.
Suarez nets before Djurdjevic loses his cool
At one end Djurdjevic was creating chances and testing Lopez himself, whilst Denis Suarez was the danger man at the other end as he played a one-two with Inaki Williams before hitting his effort at the side netting.
As the half drew to a close, either side's key players were to have contrasting moments within the game. For Suarez it was ecstasy as right-back Alvaro Odriozola interchanged with Williams before picking out the midfielder to smash home the opener.
Yet Djurdjevic had shown signs of frustration, booked earlier on in the game for chopping down Jose Luis Gaya. Just two minutes after Serbia had fallen behind, the captain lost his cool again and elbowed Mikel Merino to receive his marching orders.
Spain should have doubled their lead before the break as Soler blasted over from six yards and Borja Mayoral was kept out by a smart block from Manojlovic at a tight angle. Yet Celades' side were in cruise control with a goal lead and player advantage.
Spain flatten the tempo with conservative possession football
Manojlovic had kept Serbia in the contest just before half-time but almost gifted Spain a second just after the interval. A poor touch allowed Suarez to nip in but his turn and shot was tipped wide by the goalkeeper.
Serbia parked up with two banks of four as they let Spain come at them with their numerical advantage. Odriozola got down the right again and picked out Williams who headed just wide on the hour mark.
Spain continued to probe but Serbia were well-organised and disciplined to limit chances. Suarez was the man who continued to make things happen from the middle of the park and he had two strikes at goal, one kept out by Manojlovic and the other mishit wide.
As the tempo of the game dwindled, Serbia formulated a rare venture forward as Nemanja Maksimovic fired an effort straight at Lopez after smart work down the flank by Andrija Zivkovic.
Both sides miss late chances as Spain hold on
Spain still looked as if they could turn up the heat and score at any moment as Manojlovic was forced into another fine stop. Mikel Oyarzabal cushioned an excellent pass down to Mayoral who was only thwarted by an outstretched hand from the Serbia goalkeeper.
Yet Serbia could have easily snatched a draw as the game began to draw to a close. Sasa Lukic stormed forward and released Zivkovic who met the ball on the half-volley, only to see his strike tipped over by Lopez.
However, Spain held firm against a late Serbian flurry to join England as two of the four semi-finalists.