Recently i found this .NET 2 library -
NGenerics: "A class library providing generic data structures and algorithms not implemented in the standard .NET framework."
If has some very nice and useful data structures:
Association<TKey, TValue>
Bag<T>
BinaryTree<T>
BinarySearchTree<TKey, TValue>
Deque<T>
GeneralTree<T>
Graph<T>
Heap<T>
Matrix
PascalSet
PriorityQueue<T>
SkipList<TKey, TValue>
SortedList<T>
SortedList<T>
RedBlackTree<T>
ReadOnlyPropertyCollection <T, TProperty>
ObjectMatrix<T>
HashList<TKey, TValue>
VisitableHashTable<TKey, TValue>
VisitableLinkedList<T>
VisitableList<T>
VisitableQueue<T>
VisitableStack<T>
Definitely useful.