The acronym "ECC" stands for Error-Correcting Code which means that ECC memory has built in mechanism to check the data stored in memory for errors that could cause instability and correct those errors on the fly. The "NECC" acronym stands for Non Error-Correcting Code which means that this type of memory does not posses the ability to check and correct data errors. Typically ECC memory is used in servers and high end workstations that perform many operations per second on a large amounts of data to ensure the integrity of the data when it's being moved within the system. NECC ram is typically used in home desktops and lower end workstations and costs slightly less then ECC RAM.
The choice between ECC and NECC RAM will not have much of a noticeable impact on the performance of the machine.