An alternative to LINQ is Array.ConvertAll() in this case:
Guid[] guidArray = new Guid[100]; ... string[] stringArray = Array.ConvertAll(guidArray, x => x.ToString()); guidArray = Array.ConvertAll(stringArray, x => Guid.Parse(x));
The performance of Runtime is probably the same as LINQ, although it is probably a little faster because it goes from and directly to the array, and not to the enumeration.
source share