If you have an array, then personally I would use:
Person[] people = ... string[] names = Array.ConvertAll(people, person => person.FirstName);
here; it avoids multiple redistributions and works with other versions of .NET. Similar:
List<Person> people = ... List<string> names = people.ConvertAll(person => person.FirstName);
LINQ will work, but not really required here.
source share