В LINQ я всегда нахожу полезным разобрать проблему.Здесь, в этом случае, у вас есть список элементов, вы хотите сузить этот список с помощью предложения WHERE и вернуть МАКС. Оставшихся элементов.
Начало
var myItems = db.GetMyList();
ГДЕ с LIKE Предполагается, что пользователь является строковой переменной
myItems = myItems.Where(x=>x.User.StartsWith("N01"));
MAX
var maxItem = myItems.Max(x=>x.User);
Все вместе
var maxItem = db.GetMyList().Where(x=>x.User.StartsWith("N01")).Max(x=>x.User);
edit - согласно комментарию ниже, поскольку строка поиска была 'N01%', она должна начинаться с, а не содержать.