Short answer: it uses SHTns for spherical harmonic transforms and tries to preserve data locality. A Longer answer can be found in this presentation: http://dx.doi.org/10.6084/m9.figshare.1304532.
The numerical methods are basically the same, but their implementations are different. The PARODY code is written in Fortran. The performance and scalability of XSHELLS are better.
Because we don’t like Fortran, and we would not be able to get the same level of performance out of a Fortran code. But maybe you could !