The 23-year-old Londoner has signed for an undisclosed fee and has agreed a three-year deal with Simon Grayson's newly-promoted Championship side.
Scannell, an Ireland Under-21 international, made 141 appearances for Palace, scoring 13 goals, after progressing through the club's academy.
Last season Scannell, who can also play up front, was a virtual ever-present for Palace, making 41 appearances and scoring four goals.
