I have tried almost all of them.
I submit that the clone that has the "W" is at least as good or in one specific way in which I use it is better than the genuine. Here's a link to "the good stuff." This is even the same seller I used to buy mine two years ago, so there's no hit and run, here. No relation.
http://www.ebay.com/itm/PICKit3-Microchip-Programmer-w-USB-cable-wires-Pic-Kit-3-/231826593859?hash=item35f9f11843:g:waoAAOSwBLlVfwUH I believe the lowercase "kit3" clone is just as good for dev purposes, as far as I can tell, but has one major annoyance in P2G mode.
(The only difference is with my particular version of the firmware and the devices I am using, a genuine PK3 occasionally freezes in P2G mode to where it's almost unusable for me. Reboot takes like 7 seconds. Support tickets gone nowhere. The "kit3" clone freezes noticeably more frequently to where it's completely useless for me. The W clone occasionally hangs for a random interval (not more than a couple seconds), but it resumes working. So I bought a small fleet of these clones!)
If the clone is done well, it will be a complete copy of the original. Microchip released the schematics and firmware so there is little excuse for it not to be.
And yet...
The Sure Electronics black plastic clone works for some people. Mine is complete junk that requires some parts changes to even work at all. Out of the box, it just gave Vdd error. And now it still works only at certain voltages. And it does not work in P2G mode, at all. The indicator LEDs don't do what the genuine does, even. It's not a matter of two LEDs being switched. They are doing something, but they are not indicating what they're supposed to, even when the device works. It boggles my mind that this is even possible to screw up, seeing as the LEDs are run directly from the PIC24 IO pins and determined by the firmware. So something is really screwed up on mine. A cursory glance suggests this clone has made the most changes to the schematic. Maybe they fixed it, but I bought mine very recently. Like within the last 6 months. I'd stay away from this one. (It has a really cool female pin header, though. I'll have to source these when I have a chance.) A simple Google will reveal SOME of the problems of which I speak.
Any PICKIT3 you buy, even a genuine, may or may not work out of the box. The first thing you should do is manually update the firmware. It will try to autochange to the right firmware, but the autoupdate will fail if it is not compatible with the version of MPLAB you are using.
What is a good programming software to use (FREEBIE if possible) c++ or Basic and any other software I may need.
I dunno, but if you're not going to use MPLAB IDE or the debugger, then I'd doublecheck before buying PK3. If using a 3rd party IDE, there is very little appeal to using PK3, because you have to use bulky MPLAB (or the very buggy and no longer supported PK3 standalone - which is not going to receive device updates), just to run the PK3, now, without the benefits of PK3 integration with IDE. Then there's the also officially supported, bulky IPE standalone. This software looks great and has a lot of features, but flashing a chip in MPLAB IPE takes extraordinarily longer than when using it in MPLAB IDE on my system!?
If OTOH your need for a programmer is simply a hardware that will eventually flash a single device using a bulky software, then PK3 is the best bang for your buck for the device compatability, and any clone other than the Sure Electronics will do. Bottom line,
if I planned to use another IDE in conjunction with MPLAB IPE I would see if a PK2 didn't have my device list covered, so I could avoid IPE. For dev, PK2 can save you a lot of time, if you aren't using MPLAB IDE and debugger. Simply because it enumerates faster. PK2 program opens up faster. Chips may flash faster. Depending on you computer, PK3 can be a real PITA. A lot of pooches were knocked up during the making of the PK3 software/firmware, particularly IPE; the bugs run deep and will never be fixed. When it takes 2-3 minutes of ACTIVE things, waiting and clicking, just to get PK3 setup on IPE, every single time.... uh, it can be really annoying when working on a project for weeks. You are already opening up your other IDE, opening your project, getting your windows set up. And you have to dick around with IPE on top of that? Not everyone has this problem of IPE being slow, but a lot of people running Windows do. I use MPLAB IDE, and it seems to be great with PK3. If I had to use IPE, nope.