The "default" for reference types is Nothing. So FirstOrDefault() returns either the first object that matches its predicate or Nothing. You usually follow it with a check against Nothing, because if you know for sure there is a result you use First() instead.

(There's also an overload that lets you specify a non-null default, but I can't tell if you called it because I can't scroll a screenshot.)