I am looking for a good C compiler for the PIC 16 family, working on Windows.
A couple of colleagues use bknudc but some seem to dislike it
You're right in your assessment that PIC16 is not really C-friendly. If you want to code in C you are much much better off doing it with PIC18.
Microchip gives out an excellent and free IDE and compiler called MPLAB for the PIC18. Its really easy to work work. Plus the PIC18 family is generally more powerful but has some chips with a not much larger footprint than that of the PIC16 family.
Starting to develop a new product with PIC16 is a not a good idea.