There are (3) types of RAM: unbuffered non-ECC, unbuffered-ECC {UDIMM}, and registered ECC {RDIMM}. ECC 'Error-Correcting Code memory' is memory with parity checking used to correct the errors.
Your CPU must support ECC to use any ECC RAM, if running Intel based systems then Xeon is required and AMD most of their consumer CPUs support both types of UDIMM, but as I understand it only the Opteron supports RDIMM.