The Scotsman has made 136 appearances, netting 16 times, since joining the club four years ago.
McArthur told the club’s official website: “I’m very pleased to commit myself to the club for another three years. It’s great, and I’m excited about the challenges that come.
“The manager has brought the best out of me from last season, and I really enjoy playing under him. We have a very good squad where there is competition for places all over the field, and I think we’ll get stronger and stronger.”
Crystal Palace chairman Steve Parish said: “James is the epitome of a model professional. He sets a brilliant example to other players, and is a real team man.
“James has been a huge success at the club and embodies everything we are about at Crystal Palace FC. We are absolutely delighted that he has resigned with us.”