I dont clean the unnecessary namespaces that .net automatically generates. Is there any problem with that?

No, there are no performance hits, no overhead, or anything UNLESS you actually use the namespace.

So having System.IO and not using any reference to it does nothing towards your application. It just allows the application to use the namespace, if it is needed.

What is your reference SheSaid ? :). Do you have any resources about it? Article or so?

I've looked it up before when I started with VS because it imported more than 20 that I don't use. Let me find it.