Believe me, the ICD2 is nice. You need that to program 30F or 33F. It's supported by Microchip and we expect it to work with new products for quite some time. It's important that it is seamlessly integrated into MPLAB. ICD works with a lot of PIC18 products too, to varying degrees. IIRC some PIC16's, even.
It's BITCHIN fast to program with, and the $100 one from Sparkfun works through the USB port so it's generally a bit cleaner on the testbench (as well as being the source of the greater speed).
So, I rate it a "must have".
The 33F don't cost any more than the 30F. In fact they can be cheaper. The only difference this leaves is the $10 Schmartboard to mount it. (Fry's Electronics sells Schmartboards)
For starters, look at the A2 Rev Errata sheet for the 33F line. They do have stuff documented there. I discovered the FRMDLY bit on the Framed SPI module does not work. There is a bug where the SPI is supposed to tristate and "sort of" does but instead drives a fairly high impedance signal out. The CANbus peripheral has a bug where it will jump from a low priority packet to a high priority packet in mid-transmission if a high priority packet is added just then. I recall seeing one other note of a CANbus problem, I think it misidentified its NodeID.
I'm sort of dismayed that these are known, Microchip-confirmed defects, they've been around for months, but Microchip hasn't publicly documented them anywhere. I don't care so much that they happened, but failing to dilligently document them will only cause major problems for users and it's completely unnecessary.
dknguyen, what sort of project do you want to try?