Did you know System.Collections.Generic.List is implemented with an array?
I had a performance problem today that showed up after some profiling.  Calls to List<>.RemoveAt(0) were taking a long time.  I'd assumed System.Collections.Generic.List would be implemented with a list data structure, but actually its implemented as an array.

Does anyone else find that surprising?
Did you know System.Collections.Generic.List is implemented with an array?
===

I had a performance problem today that showed up after some profiling.  Calls to List<>.RemoveAt(0) were taking a long time.  I'd assumed System.Collections.Generic.List would be implemented with a list data structure, but actually its implemented as an array.

Does anyone else find that surprising?