Предполагается хранить в переменной многоуровневое древо , где конечные элементы это объект со свойствами.
Как это лучше реализовать в C#?
Пример для понимания это реализация многоуровневого меню имеющее вложенность, а конечным элементом является ссылка. Или например закладки в браузере, где конечный элемент это объект со свойствами (иконка, текст, ссылка и тд)
updt: