title: What is a list in C# and how does it work?
body: <p>If I search online for "c++ list" I get a good summary of how a list in c++ works, and its benefits / drawbacks, and such. However I can't find the same for C#. As far as I'm aware the name list doesn't say anything on how it is implemented and it can vary greatly what a list actually is in a language.</p>
  
  <p>I need to load in a lot of files with lots of data into preferably one array for fast random access of all the data. However its too much data and c# can't find a continuous block of memory big enough. So I was going to create an abstraction that took many arrays and would act as one. It would have an indexer property that would see about accessing the correct array.</p>
  
  <p>However then I thought, isn't that how a list actually works in c#? All I know about lists in c#, or at least think, is that they don't work like a linked list where there is no way to access a random element but from the previous element or perhaps from the element after it.</p>
  
  <p>Can I get some detail on this matter?</p>