んー、であれば、List<T>でやってもIEnumarableでやっても、
メモリ使用量はほぼ同じになります。
Folder - SubFolderの階層構造がある故に、各SubFolderにアクセスした時点で、そこまでに至る行の
Folder、SubFolderはインスタンスとして作成されてしまうので。
前提としてのFolder、SubFolderの構造をもちっと考え直して欲しいかな。