1) So If I want to only read and write the Hex file. Then I have to have pickit 2 programmer and ZIF socket which is on the following option.
**broken link removed**
Really the only requirement is the PICkit 2 or clone, which can both program or read a device which has already been programmed.
However, you must interface the PICkit to the PIC before programming or reading it.
If you have a compatible board with a built-in ICSP interface, you can certainly use it to both program and read the PICs.
Look for a six pin header, typically marked ICSP.
Or you could always breadboard the PIC which only requires a few discrete components.
The ZIF socket adapter simply turns the PICkit into a standalone programmer, no breadboard or development board required.
2) So ain addition If I want programme (coding) my own, then I have to have both development board as well as pickit 2.
Also please make sure if they are compatible each other If I am using them together
**broken link removed**
https://www.sparkfun.com/products/8562
Firstly, the ZIF socket adapter is not typically considered a development board, as it does not provide access to any of the PICs pins other than to interface with the PICkit.
Secondly, as I indicated above, you could use a breadboard, a handful of discrete components and a well regulated power supply to both program, read and develop your own applications for the PIC.
Of course a development board which offers an ICSP interface can also act as a socket adapter for both programming, reading and developing with PIC.
To summarize, you really only need the PICkit or clone and with a breadboard and a handful components, you could accomplish all three tasks.
It's all a matter of convenience and comfort level. If you believe you can breadboard a circuit, then just purchase the PICkit, a breadboard and the handful of components.
Otherwise, decide whether you need a development board, which supports the PIC18F4550, or just the ZIF socket adapter.
BigDog