Посмотрите на перегрузку DirectoryInfo.GetFiles , которая принимает аргумент SearchOption и передает SearchOption.AllDirectories, чтобы получить файлы, включая все подкаталоги.
Другим вариантом является использование Directory.GetFiles , у которого есть перегрузка, которая также принимает аргумент SearchOption :
return Directory.GetFiles(folderName, "*.*", SearchOption.AllDirectories)
.ToList();