The country's leading marksman took his tally for the season to 28 with a superb first-half opener.
Stephen Dobbie struck after the break to seal Palace's third win in four outings and dump sorry Bristol City on to the foot of the table despite a late own goal by Jonathan Parr.
Murray gave Palace a deserved lead after 34 minutes, and the only surprise was that it took them so long.
They did everything but score in the opening half an hour, including having a goal ruled out and hitting the bar.
Murray hit an early shot straight at Tom Heaton and Wilfried Zaha blazed over from a tight angle after being teed up by Jonny Williams.
Moments later Yannick Bolasie came up with a stunning overhead kick inside the area but his effort cannoned back off the woodwork with Heaton beaten.
Zaha had a shot deflected wide and Peter Ramage headed Parr's cross over before the goal Palace had been threatening finally arrived.
Skipper Mile Jedinak took a quick free-kick over the top to Murray, who expertly volleyed home on the run from a tight angle.
Murray could have bagged a second before half-time but he could not control a cross from Ashley Richards in front of goal.
But the home side extended their lead when Dobbie notched his first goal for Palace just four minutes after coming on as a substitute.
The on-loan Brighton striker was felled outside the area and picked himself up to curl a fine 64th-minute free-kick past Heaton.
However it was a Palace player who grabbed the final goal, although it went to City as Parr made a mess of a cross into the box and headed it past his own keeper in stoppage time.