The IICRC courses are carpet and upholdstery seperately, the NCCA course covers both subjects in one course. The IICRC courses are more in depth and therefore better, but it comes down to time and money.
IICRC are the best choice, but you should join the NCCA as well. Not sure if you need both courses to join NCCA. Over to someone else