USB versus SPDIF

Sample rate and bit depth

SPDIF allows 20 bits, optional 24 bits audio and the sample rate could be as high as 192 kHz.
Cheap USB implementations are limited to 16 bits/ 48 kHz, the more expensive ones to 24/96.
24/96 is a limitation of the USB audio 1 protocol (not to be mistaken for USB 1).
All native mode USB audio drivers in Win, OSX and Linux support this protocol.
In 2009 the USB audio 2 standard was finalized.
Now 176 and 192 sample rates are supported too.
As long as the major OS don't implement this standard, you are limited to 24/96.
Some gear comes with there own USB-audio drivers allowing you to use 176/192
 
The send rate of the SPDIF bus is used to generate the sample rate.

USB in isochronous mode (used for audio) runs at a fixed rate.
Frames are send to the receiver. These frames might or might not contain data.
The sample rate is guessed from the rate the data is pouring in.

In both cases the transfer is real time.

Error correction

Both protocols are unidirectional, the sender starts sending and when an error occurs, no retry is possible.
Isochronous USB does have an error detection mechanism (CRC), but no retry or guarantee of delivery.

Connecting

You won't find many PC's with a SPDIF (coax or optical) out.
Likewise you won't find much audio gear with a USB input except the rapid growing number of USB DAC's.

As the audio industry most of the time offers legacy SPDIF connectivity instead of USB, especially the multi media PC’s close the gap by offering SPDIF over optical or electrical.

There are protocol converters, from USB to SPDIF to bridge the gap between the PC and the audio world.

Sound quality

There are high quality implementations of SPDIF. Small wonder from the 80's on audio industry had the time to optimize the product.
USB audio was most of all targeted at the desktop, not at highest possible sound quality.
Today you can get very good DAC's with USB input delivering high sound quality.
Asynchronous USB is considered the way to go by many for optimum results

 

Technically both are capable of bit perfect transmission with a low jitter.
As usual the result will be dependent on the implementation.