C # Remover todos os subdiretórios vazios

Eu tenho uma tarefa para limpar um grande número de diretórios. Quero iniciar em um diretório e excluir todos os subdiretórios (não importa a profundidade) que não contenham arquivos (os arquivos nunca serão excluídos, apenas os diretórios). O diretório inicial será excluído se não contiver arquivos ou subdiretórios. Eu esperava que alguém pudesse me indicar algum código existente para isso, em vez de ter que reinventar a roda. Eu farei isso usando C #.

questionAnswers(8)

yourAnswerToTheQuestion