Здравствуйте, Ketsalkoatl, Вы писали:
К>А насчет того, что поток необязательно закрывать, даже и не знал, это сборщик мусора отрабатывает за меня все это?
Нет. Сборщик мусора здесь не при чём. Вы можете использовать конструкцию using потому, что StreamWriter реализует интерфейс IDisposable. При выходе из блока using будет вызван метод Dispose() у объекта потока, который и закроет его.
Посмотрите подробнее насчёт IDisposable в MSDN.