I think I\'ve settled on this as the most simple and unit-testable method for randomising a list, but would be interested to hear of any improvements.
public sta
This looks good to me. Note that you'll get slightly better performance (especially for large lists) if you initialize ret with the length of list, so that the list doesn't have to be reallocated:
ret
list
List ret = new List(list.Count);