netduino SPI stops clock after write on WriteRead()
With a SPI interface, you need to do "dummy" writes in order to provide the clock cycles required to get data back from most devices. Try something like this:

byte[] write = new byte[] { 5, 0, 0 };
byte[] read = new byte[3];

spi.WriteRead(write, read);


After this executes, you should have a "garbage" byte in read[0] (this was the data on MISO during the first 8 clocks) and then two bytes from the memory in read[1] and read[2].