I would say in this case it’s more of a performance hit than a benefit. The original code cycles through the entire list, but then it’s done. This code makes a copy of each reference on the heap, and then returns the first point, but the Reverse() takes just as long as the original search.