The first-half started off slowly for both sides but the first big chance of the game fell to Kelechi Iheanacho from the penalty spot. James Tomkins brought down his man and the Nigerian had the chance to grab the opener.
A great run from Jeffrey Schlupp allowed the Ghanian to cut the ball back to Townsend who could only fire narrowly past the near post.
Shortly after the interval, starman Wilfried Zaha fired Palace in front with a powerful near-post volley after a great cross from Townsend.
In the final 15 minutes, Barnes went on a solo run evading many challenges before hitting his effort into the bottom corner to rescue a point for the Foxes.
Zaha is the main man yet again
The Ivorian has been out of sorts recently and he hasn't been as consistent as his early-season form predicted.
However, he shows yet again that he is the difference for Palace when he came up with a smart near-post volley to give the Eagles the lead.
He missed his counterpart in Eberechi Eze but he started to find pockets of space against Leicester and cause serious problems for the opposition's defence.
Missed chances allowed the Foxes to come back in the game
Townsend had a great opportunity in the first-half to give Palace the lead but that wasn't the first chance to go begging for the Eagles.
Christian Benteke had a chance to head home but his effort was allegedly blocked by the hand of Daniel Amartey before Zaha flashed an effort over the bar from outside of the area.
It is fair to say that Palace would've won very comfortably if they had converted most of their chances but a draw isn't an awful result against a top-two team.
Mitchell showed he is the better option at left-back
Tyrick Mitchell performed well today given that he was up against an in-form James Justin who caused problems on the right-hand side.
Mitchell isn't better going forward but he is the far better option defensively as he stayed in the left-back position and didn't need too much covering.
Right now, Palace need better defensive options to keep the ball out of their net and Mitchell is a sure option on the left to help solve that issue.