The run of play then swung in Valencia's favor when Soldado redirected Pablo Hernandez's backpass by goalkeeper Iker Casillas in the 82nd.
Valencia had one last shot to snatch a draw deep in stoppage time, but Madrid's defense held firm to earn its eighth straight victory in league play.
Valencia's second loss of the season left it in third place, seven points behind Madrid.
Earlier, Barcelona's precision passing game kept Zaragoza on the back foot as the three-time defending champions had little trouble extending their excellent start to 19 games without a loss this season.
Gerard Pique and Lionel Messi scored before halftime, with Carles Puyol forcing Zaragoza defender Maurizio Lanzaro into adding an own goal before David Villa capped the win late.
Zaragoza failed to draw a single save from goalkeeper Victor Valdes. Barcelona has outscored its league opponents at Camp Nou 30-0 in seven games this season.
While Barcelona coach Pep Guardiola left Villa and Andres Iniesta on the bench to begin the game with his team set to play AC Milan on Wednesday in the Champions League, he started Messi despite his recent matches and travels with Argentina.
The long international break appeared to show early as Barcelona dominated possession but lacked spark in attack.
But that soon changed when Xavi Hernandez picked out Pique charging into the area unmarked to head home his free kick for the 18th-minute opener.
"Sometimes it is good to take advantage of set-pieces when teams play back in defense," said Pique, adding that he wasn't concerned with Madrid's top form. "We just have to focus on ourselves. There is a lot of league left to play."
More on footballAhead in the score, Barcelona began to bombard Zaragoza's area with only Roberto Jimenez's goalkeeping denying the hosts a quick second goal as he saved shots from Messi, forward Alexis Sanchez and left-back Maxwell.
Messi provided a constant threat with his advances through the middle of the defense, and he soon took his league-leading goal tally to 15 when he received Cesc Fabregas' pass inside the area and shot by Roberto with a low right-footed strike. It was the star's 50th goal for Barcelona in 2011.
Zaragoza showed some effort to cut the deficit after halftime, but the result was soon put beyond doubt when Lanzaro pushed the ball across his own goalline in a desperate attempt to stop Puyol from tapping home a rebound of his own strike that Roberto had done well to block.
Villa went on with Iniesta as substitutes and the Spain striker was alone in the area in the 75th to head in B-teamer Isaac Cuenca's cross for his first goal in seven league games.
Elsewhere, Borja Valero's first-half goal gave Villarreal a 1-0 win over visiting Real Betis for its third win of the season.
On Sunday, it's: Real Sociedad vs Espanyol, Osasuna vs Rayo Vallecano, Sporting Gijon vs Getafe, Sevilla vs Athletic Bilbao, Atletico Madrid vs Levante, and Granada vs Mallorca.
Racing Santander hosts Malaga on Monday.