Вы можете отсортировать его в два раунда:
Foo().OrderBy(x => x.Id == 314 ? 0 : 1).ThenBy(x => x.Name)
Может быть, это даже проще (при условии, что логическое значение false искажено до логического значения true)
Foo().OrderBy(x => x.Id != 314).ThenBy(x => x.Name)