Olá, vai a tentativa de fazer um síntese do que você precisa para começar a programar um pic usando bootloader.
O que é o bootloader?
Um firmware gravado no PIC que associado a um programa no computador PC possibilita a transferência dos arquivos binarios (.HEX) gerados pela sua ferramenta de desenvolvimento (compilador, linker) sem a necessidade de usar um dispositivo como programador no caso do PIC os mais conhecidos são o PICKIT2 e PICKIT3
O bootloader já vem gravado no PIC quando eu compro?
Não, o firmware bootloader não vem gravado no PIC, até porque existem vários tipos, alguns desenvolvidos pela MICROCHIP, outros por fabricantes de compiladores e mesmo desenvolvedores independentes.
O que preciso para gravar o bootloader?
O firmware, isto é o arquivo .HEX do bootloader de sua escolha e um programador como o PICKIT3. Depois de gravado você não precisa mais do programador
Quais os tipos de bootloader e onde encontro eles?
No caso particular do PIC18F4550 eu indicaria o que é fornecido pela Microchip (links abaixo). Com esse bootloader o firmware que você criar é transferido pela USB já que o PIC18F4550 já tem o hardware para USB. Existem alguns outros bootloaders (link abaixo) que fazem a comunicação pela interface serial. Nesse caso você precisa usar como hardware adicional um adaptar serial (lado PIC) para USB (lado computador) como FTDI.
Considerações gerais.
Se você pensa em utilizar microcontroladores PIC, vale a pena investir no programador PICKIT3, o mais recente no mercado, não é tão caro e investimento em ferramentas sempre vale a pena. Além de gravar o bootloader pode ser usado com outros PIC´s que não tem suporte a bootloader.
O PIC18F4550 com seus 40 pinos fornece um bocado de recursos. No momento estou utilizando o PIC18F14K50 de 18 pinos que custa apenas 12 reais e precisa basicamente um cristal e fonte de 3 a 5 volts para funcionar. Com o bootloader tenho um sistema enxuto e barato para desenvolvimento.
Falando em desenvolvimento você tem várias opções desde o MPLABX com o compilador XC8 fornecido pela MIcrochip, Mikroc, CCS, SDCC, e até o Pinguino um ambiente no estilo Arduino.
É isso, boa sorte nos seus experimentos e estou a disposição para dúvidas.
Links
http://www.microchip.com/pagehandler/en-us/devtools/mla/home.html
http://www.picprojects.net/usbbootloader/
http://www.microchip.com/forums/m424874.aspx
http://wiki.pinguino.cc/index.php/PIC18F2550_Pinguino