CP/M 3.0 was only 2 years old when the 128 came out and there was a huge library of software available for it including business and productivity software that was seriously lacking on the C64.
This. I used CP/M 3+ on my 128D frequently, but mostly for my first programming classes. Small C, some COBOL and Pascal compilers. It worked great, and I could write to floppies which my instructor could read with her computer.
I used a bunch of other software for various things. I downloaded a lot of software, some from Q-Link's CP/M area but almost everything else from GEnie, and some things from BBSes.
I have discussed various CP/M ports on and to other CPUs, like 68000 and 9900. But the prevalence of Z80 software almost negates native ports and rather encourages good Z80 emulation.