How to choose a USB controller?
A good way to narrow down the field of potential products is by figuring out exactly how you will use it. For example, keyboardists who plan to use their controller for recording MIDI parts into their DAW or playing software instruments will prioritize the keyboard itself. They would choose one that has the type of response they prefer with enough keys that they can play parts comfortably without using the octave button too often to reach the upper and lower notes they use.
In addition, having extra keys allows you to utilize the lower octave for keyswitching, so you can easily switch between sampled instrument articulations in many libraries—very handy! The downside is that a controller with many octaves and weighted keys is heavy and takes up more space then a controller with only one or two octaves.
In contrast, musicians who will play simple melodies and bass lines need only an octave of keys and can get away with a smaller, lighter, and less expensive controller.
Of course, controllers can provide other functionality, as well. If the device has knobs and sliders, you can map them to different aspects of your software synths and DAW. In the most obvious case, knobs can control panning or EQ in a software mixer, while the sliders control the volume faders for each channel.
Musicians who make beatbased music will want a controller with pads for playing drum machines and samplers. The most useful ones are velocity sensitive and have Aftertouch, so you can play more expressively.
Many devices offer a mix of these controllers. The trick is to anticipate your musical needs in the future so that the controller you buy now will have the functionality you need later.