Фактически, класс CsvReader представляет из себя энумератор стро, каждая из которых - энумератор колонок. Чтение исходного файла происходит по мере продвижения по энумератору. При таком подходе память классу практически не нужна.
Полное соответствие RFC4180
Очень высокое быстродействие
Нет внешних зависимостей (pure .NET code)
github.com/shvydky/csvreader