Element operators return a single element or a specific element from a collection. The elements operators are Single, SingleOrDefault, First, FirstOrDefault, Last, LastOrDefault.
List < int > data = new List < int > { 10, 20, 30, 40, 50 }; //Try to get element at specified position Console.WriteLine(data.ElementAt(1)); //result:20 //Try to get element at specified position if exist, else returns default value Console.WriteLine(data.ElementAtOrDefault(10)); //result:0, since default value is 0 Console.WriteLine(data.First()); //result:10 Console.WriteLine(data.Last()); //result:50 //try to get first element from matching elements collection Console.WriteLine(data.First(d = > d <= 20)); //result:10 //try to get first element from matching elements collection else returns default value Console.WriteLine(data.SingleOrDefault(d = > d >= 100)); //result:0, since default value is 0 //Try to get single element // data.Single(); //Exception:Sequence contains more than one element //Try to get single element if exist otherwise returns default value // data.SingleOrDefault(); //Exception:Sequence contains more than one element //try to get single element 10 if exist Console.WriteLine(data.Single(d = > d == 10)); //result:10 //try to get single element 100 if exist otherwise returns default value Console.WriteLine(data.SingleOrDefault(d = > d == 100)); //result:0, since default value is 0