I'd just check that as soon as you declare list:
Code: 
if (list.Count == 0) return String.Empty;
If the code runs after that you know there are nodes, thus no need for a try-catch. They are resource eaters .