The two pieces of hardware are virtually identical, as asalamon74 points out.  There are only a few hardware differences, with a larger set of restrictions based on firmware.

To extend on what asalamon74 has already pointed out, here are some direct answers to your bullet points:

 - Connectivity for both devices are USB.  If you get a Kinect for Xbox as part of a bundle (i.e., which an Xbox 360) you will need to buy an adapter, [available from Amazon][1] and others.
 - Hardware is virtually the same.  Kinect for Windows has a shorter USB cable.  Kinect for Windows may have a better microphone array, but I can't be sure of that.  Other then that, they are basically the same.
 - API is the same for both devices.  Both the official [Kinect for Windows SDK][2] and the [OpenKinect SDK][3] will work with both devices.
 - License allows you to use the Kinect for Xbox for anything except a deployed (commercial) application.

I use both for development.  I have two Kinect for *Windows* that I use at work and I have a Kinect for *Xbox* at home.  I bring work home with me frequently and I'm able to develop with either version of the hardware, depending on where I am.


  [1]: http://www.amazon.com/Xbox-360-Kinect-Adapter-Power-Supply/dp/B004IXRXGY
  [2]: http://www.microsoft.com/en-us/kinectforwindows/
  [3]: http://openkinect.org/wiki/Main_Page