Different interfaces for the same functionality. SPOT versus Gadgeteer

This is a newbie question (new to NETMF, not new to programming :-).

Can somebody please explain (or point me at an existing explanation of) the relationship between the following API’s, which seems to have overlapping functinality.

  1. Microsoft.SPOT.Hardware, e.g. InterruptPort Class,
  2. Gadgeteer.Interfaces, e.g. InterruptInput Class

In general, I’m trying to understand…
a. Which is preferable to use?
b. Interrupt event handlers for the two Interrupt classes are different. Do they have a similar stack trace through the layers from hardware ISR’s to managed code event handlers?
c. Trade-offs in terms of performance, stability, etc.?
d. Any other considerations I should be aware of when making the choice?

Tx in advance.

If your project is Gadgeteer based then use the Gadgeteer implemention, these are wrappers around the NETMF implementation

For a plain NETMF project use the core APIs