Unless it's a server, go with unbuffered. On SDRAM (and it's offshoots) registering takes one clock cycle. Just so this makes sense, registered=buffered.
You said that the registers perform a "buffering" function. What does this do to help?
Think of it as "power steering" for the memory module.
If you have a sports car, you don't need power steering. The steering wheel directly controls the direction of the wheels. In fact, this direct control even maximizes the car's performance (except when parallel parking, of course...)
But, if you have a big, heavy truck, only Ahhh-nold has the strength to move those tires without a little help. So, when you turn the wheel, the relatively weak energy you put into the steering wheel is assisted by a much more powerful motor, which actually sets the direction of the wheels.
So, you want registers if you are moving a heavy load?
Yes, exactly. That's why most servers use registered memory, and in fact most server motherboards REQUIRE registered memory.
Do all registered modules come with ECC?
All Corsair registered modules have ECC. But, strictly speaking, this does not have to be the case. But, since most registered memory configurations have large amounts of mission-critical memory, it only makes sense to use error correction.