Using PBP and the SERIN2/SEROUT2 any two MCUs can communicate.

As for what MCU to use it depends on the scope of your projects. If you ever want to do USB for example you would want to go with something in an 18F...