One of my biggest issues dealing with a move from Java to .Net is the fact that there isn\'t a Set interface in .Net. I know there are libraries I could go and download but
There's HashSet<T>
these days, but sadly no interface of which I'm aware.
I also moved from Java to .Net recently (due to professional employment) and I must admit that my initial problems have also been on collections.
In the current .Net version (3.5 and speaking about C#) you should orientate yourself on
ICollection
IList<T>
List<T>
IDictionary<TKey,TValue>
IEnumerable<T>
These are the most commonly used (hope I didn't miss one)
Perhaps the reasoning is that a set is really just a list with a particular implementation detail that restricts the items in it to being distinct. Since the distinctness of the list is in the implementation rather than the interface, an interface is not needed.
As others have mentioned, the FCL has the HashSet<T>.