Does a List do auto sorting?
<p>I am wondering does a list auto sort or something?</p>

<p>I have a </p>

<pre><code>List&lt;MyClass&gt; myClass = new List&lt;MyClass&gt;()
myClass.Add(anotherClass);
myClass.Add(anotherClass2);
myClass.Add(anotherClass3);
myClass.Add(anotherClass4);
</code></pre>

<p>So all of them are MyClass object. They have something like this in it</p>

<pre><code>public class MyClass
{
   public string type {get; set;}
   public string title {get; set;}
}


List&lt;MyClass&gt; first = myClass .where(x =&gt; x.type == "first").toList();
List&lt;MyClass&gt; second = myClass .where(x =&gt; x.type == "second").toList();

first.Sort((x, y) =&gt; string.Compare(x.title, y.title));
second.Sort((x, y) =&gt; string.Compare(x.Title, y.Title));
myClass.Clear();
myClass.AddRange(first);
myClass.AddRange(second);
</code></pre>

<p>So my real code sort of looks like this except "MyClass" is more complex and I have them in a foreach loop.</p>

<p>When I do first.Sort() and second.Sort() all my objects are in the correct order based on Title. When I clear and add "first" objects in first and then "second" object second it ruins my sorting.</p>

<p>I need the objects with type "first" to be sorted and before objects with types "second".</p>

<p>So say I have</p>

<pre><code>A - first
B - second
C - first
D - second
</code></pre>

<p>it would be</p>

<pre><code>A
C
B
D
</code></pre>

<p>I am getting</p>

<pre><code>A - First
B - second
C - First
D - second
</code></pre>
