var filelist = Directory.GetFiles(<directorypathandname>);
var result = filelist.Where( f => f.Length == filelist.Max( f2 => f2.Length));
Теперь результат будет содержать все файлы с самым длинным именем.Обычно только один, я думаю, но все они, если они имеют одинаковую длину и самые длинные.