Это два разных уровня, используемые при выводе информации в известные источники данных.
FileStream - это тип Stream, который концептуально представляет собой механизм, который указывает на какое-то местоположение и может обрабатывать входящие и / или исходящие данные в и из этого местоположения. Существуют потоки для чтения / записи в файлы, сетевые соединения, память, каналы, консоль, прослушиватели отладки и трассировки и некоторые другие типы источников данных. В частности, существует FileStream для чтения и записи в файловую систему. Большинство потоков довольно низкого уровня использования и обрабатывают данные в байтах.
StreamWriter - это оболочка для потока, которая упрощает использование этого потока для вывода простого текста. Он предоставляет методы, которые принимают строки вместо байтов, и выполняет необходимые преобразования в и из байтовых массивов. Есть другие писатели; другой основной, который вы бы использовали, это XmlTextWriter, который облегчает запись данных в формате XML. Существуют также аналоги Reader для Writers, которые аналогичным образом переносят поток и облегчают получение данных обратно.