title: LINQ - Does the Where expression return new instance or reference to object instance
body: <p>This is probably a basic question for some, but it affects how I design a piece of my program.</p>
  
  <p>I have a single collection of type A:</p>
  
  <pre><code>IEnumerable&lt;A&gt; myCollection;
  </code></pre>
  
  <p>I am filtering my collection on 2 different criteria:</p>
  
  <pre><code>IEnumerable&lt;A&gt; subCollection1 = myCollection.Where(x =&gt; x.Count &gt; 10);
  etc.
  </code></pre>
  
  <p>Now, I know that the .Where expression will return a new instance of IEnumerable, but does the new collection contain the same reference to an instance of type A that 'myCollection' references, or are new copies of type A created? If new instances of type 'A' are created, is there a way to say that 'subCollection1' references the same instances of A as 'myCollection' references?</p>
  
  <p>Edit: To Add further clarification.</p>
  
  <p>I am looking for a way so that when I make a change to an instance of 'A' in 'subCollection1', that it is also modified for 'myCollection'.</p>