Несколько ответов уже сортируют последние несколько чисел (что может быть правильным, поскольку вы показываете только отсортированный список).Если вы хотите, чтобы «невыбранные» числа отображались в их оригинале, не обязательно отсортированном порядке вместо отсортированного, вы можете вместо этого сделать
int num = 3;
var result = list.Where(x => x == num).Concat(list.Where(x => x != num));
Как указывает @DuaneTheriot,1006 * Метод расширения IEnumerable OrderBy выполняет стабильную сортировку и не меняет порядок элементов, имеющих одинаковый ключ.Другими словами,
var result = list.OrderBy(x => x != 3);
работает так же хорошо, что сначала сортирует 3 и сохраняет порядок всех других элементов.