I\'ve searched around and haven\'t really found a clear answer as to when you\'d want to use .First
and when you\'d want to use .FirstOrDefault
wit
First()
When you know that result contain more than 1 element expected and you should only the first element of sequence.
FirstOrDefault()
FirstOrDefault() is just like First() except that, if no element match the specified condition than it returns default value of underlying type of generic collection. It does not throw InvalidOperationException if no element found. But collection of element or a sequence is null than it throws an exception.