how to get second record in linq to sql
You can try this:
var query=data.Skip(1).Take(1);
Take() returns null if the element is not there (so is equivalent to FirstOrDefault()).
If you'd rather an exception was thrown (cos the second element is not there) like First() then use:
Skip(1).Single()