Just like everyone else mentions here implementing USB with a PIC is rather difficult.... but if it is USB what you want you can always use a RS232-USB converter.
FTDI makes a killer chip. What it is, a chip that accepts RS232 from your PIC and sends it over the USB media. Once it arrives to the PC, FTDI provides you with a USB driver that simulates a RS232 port. This is called a virtual COM port, and it "fools" the PC into thinking that it has another COM port and the driver makes sure to tranform the USB data coming from the PIC, into RS232 data that can be read from the virtual com port. This simplifies things a whole lot.
There is no need for USB for PIC to PIC communications, I would rather use the I2C or RS232 for those. But PIC to PC I would recommend the USB since more and more computers now have only USB ports.