Porównywanie dwóch list <ciąg> dla równości

Poza przechodzeniem przez elementy jeden po drugim, w jaki sposób porównać dwie listy ciągów pod kątem równości (w .NET 3.0):

To się nie udaje:

// Expected result.
List<string> expected = new List<string>();
expected.Add( "a" );
expected.Add( "b" );
expected.Add( "c" );

// Actual result
actual = new List<string>();
actual.Add( "a" );
actual.Add( "b" );
actual.Add( "c" );

// Verdict
Assert.IsTrue( actual == expected );

questionAnswers(8)

yourAnswerToTheQuestion