Edit: Ok, I've done a little bit more reading and it seems all I need is a compiler. Do you know what one would be best for beginners? Or do you need to choose the compiler by the PIC you buy?
Both, in some cases... Most compilers will work for a broad variety of PIC chips... Others will only work for a select few... Shop around and look at the details of each one...
Best is really a loaded question... The best for you is the one that works best for you, not what works best for others... There is a lot of personal preference in your choice over actual performance issues... Regardless of claims of this or that compiler, compiling the best code there are always counter claims showing the contrary... If optimization is you goal than learn assembly and skip the compiler, IMO...
There is also the cost, what you can or can't afford comes into play...
MPLAB and HI-TECH are the C compilers pushed by Microchip...
http://www.microchip.com/stellent/i...E&nodeId=1406&dDocName=en534868&redirects=c30
But, there are others like CCS, MikroC as well as others (just Google search) that shouldn't IMO be dismissed just because, as many offer some unique options or features...
As I have said in other threads I find the offerings from Mikroe to be both cost efficient as well as quality... They also offer a lot of lateral movement between languages as well as micro brands, all within the same companies offerings... This has it's advantage on the developer boards they offer as most of the plug in accessories can be moved between different micro brand developer boards they offer without hassle... And many of the libraries to use these accessories are bundled into all their compilers...
I have used and will continue to use many of Mikroe's offerings (both hardware and software) even though my primary compiler is PicBasic Pro...