Hmm...was fishing through GotDotNet user samples when I came across this is an extermely cool implementation of different types of Binary Search collections - now I have never used the Sorted List collection before - but I should've done! It has a very cool feature which lets you access elements by value or key. The GotDotNet ones do pretty much the same thing except they're more efficient for certain types of data; see here for more info on Splay Trees and here for info on Red-Black trees and here for info on Binary Search trees - pretty useful and could help optimise in-memory searches!