A.加入AgNO3溶液,Na2CO3溶液、(NH4)2SO4溶液、NH4Cl溶液都能生成沉淀,不能鉴别,故A错误;
B.加入NaOH溶液不能鉴别Na2CO3溶液、KNO3溶液,二者与NaOH溶液不反应,无明显现象,不能鉴别(NH4)2SO4溶液、NH4Cl溶液,二者都生成NH3,故B错误;
C.根据四种溶液中含有的离子可知,鉴别CO32-、SO42-离子可用Ba2+,鉴别NH4+离子可用OH-,所以加入Ba(OH)2溶液,Na2CO3溶液可生成白色沉淀,KNO3溶液不反应,无现象,(NH4)2SO4溶液既产生白色沉淀,又有刺激性气体产生,NH4Cl溶液只产生刺激性气体,可鉴别,故C正确;
D.加入HCl,与KNO3溶液、(NH4)2SO4溶液、NH4Cl溶液都不反应,无法鉴别,故D错误.
故选C.