C# used to be called Java when I started programming! lol.
CCS is a good program, use it in work, never give me problems, in fact, I find it easier than C18.
Hi Tech C is pretty much the same as Microchip's own compiler, I believe the code is portable between the two.
Source Boost has had good reviews also.
99% Of the Microchip Libraries are available for CCS in some ported form or other.
For a free solution I would go with Microchip's own compilers / Hi Tech Demo compilers, I believe there is just an optimisation limit for MChips, not sure about Hi Tech, might be a 2K limit.
CCS C is expensive software, they might have a demo version on their website.
Wilksey