Today I read this great post from Slobodan Celenkovic on how easy it is to chew up memory in your Java application by creating more objects than you really need. This is based on hard figures from an application he was running, not just on theory. The same issues almost certainly apply to C#, Python, etc. too.
It's easy to get into bad habits on small projects, and then suddenly find that your approach just doesn't scale up for big projects. When that happens, it's a good idea and follow Slobodan's example - investigate and understand, don't just try hacking code and hoping.