using System;using System.Collections.Generic;using System.IO;using System.Runtime.Serialization.Formatters.Binary;internal static class Program{ private const string fileName_ = "words.dat"; private static void Main() { try { Console.WriteLine("Ввод строк/слов, каждое с новой строки, окончание ввода - пустая строка"); var words = new List<string>(); string line; while ((line = Console.ReadLine()) != string.Empty) words.Add(line); Serialize(fileName_, words.ToArray()); words.Clear(); Console.WriteLine("Вывод данных из файла"); var words_from_file = (string[]) Deserialize(fileName_); for (var i = 0; i < words_from_file.Length; i++) Console.WriteLine($"{i} = {words_from_file[i]}"); } catch(Exception e) { Console.WriteLine(e); } finally { Console.ReadLine(); } } private static void Serialize(string file, object o) { using (var fs = new FileStream(file, FileMode.Create, FileAccess.Write, FileShare.ReadWrite)) { var bf = new BinaryFormatter(); bf.Serialize(fs, o); } } private static object Deserialize(string file) { using (var fs = new FileStream(file, FileMode.Open, FileAccess.Read, FileShare.Read)) { var bf = new BinaryFormatter(); var o = bf.Deserialize(fs); return o; } }}Сериализация в бинарный файл. В вашей программе действия записи и вывода происходят 2 раза, если это действительно надо повторить, то добавьте все в цикл и повторяйте сколько надо/хочется