The game got off to a lively start with both sides signalling their attacking intent in the early stages.
In the 12th minute, Ederson came to City's rescue as the shot-stopper produced a fine save to keep out Patrick Van Aanholt's deflected volley.
Seven minutes later, Palace were dealt a blow when captain Scott Dann suffered an injury and was stretchered off. He was replaced by Martin Kelly.
City were dealt a blow of their own after 22 minutes as Gabriel Jesus could not continue after receiving a knock earlier in the game. Sergio Aguero came on his place.
Aguero nearly made the perfect impact shortly after his introduction as his strike from close range struck the upright in the 28th minute.
That proved to be the final clear cut chance of the half despite the upbeat tempo and the sides went into the break goalless.
The first real opening arrived after 62 minutes when Raheem Sterling found Bernado Silva, who was denied by a fine save by Wayne Hennessy at the far post.
With City dominating, Roy Hodgson opted for a change with 15 minutes remaining as Yohan Cabaye made way for Jason Punchoen.
Palace should have broken the deadlock in the 77th minute but Andros Townsend managed fire horribly wide at the far post after being picked out by Wilfried Zaha.
However, Palace were awarded a penalty in the 90th minute when Zaha was brought down by Sterling. Luka Milivojevic stepped up but saw his spot kick saved by Ederson.
City were also dealt a blow in stoppage time when Kevin de Bruyne was stretchered off after a late challenge from Puncheon.
That was the final action of the half as the two sides settled for a share of the spoils.