Question: Suppose I have a method that returns an array or list or some other collection. If something goes wrong inside or when there is simply no data to return, what is better - to return null or to return array (list, etc.) that has length (count) equal to 0?

In fact is it important, or it is just a matter of developer's preferences?

Answer: 
Your iteration code will be a lot easier if you return empty collections instead of null. 

However, it may be important to distinguish between an empty collection and no collection of data, so it depends on the semantic of the actual type.
Here is an article by Josh Bloch explaining the same. It's written in Java's context but it should apply to C# equally well.
[Return zero-length arrays, not nulls](http://www.informit.com/articles/article.aspx?p=31551&seqNum=5)