C # не содержит древовидную структуру данных, так что можно использовать для создания дерева. Если он состоит из множества связанных списков, связанных друг с другом, или есть более простой способ решить эту проблему.
РЕДАКТИРОВАТЬ: В частности, тот, который может содержать неограниченное количество детей