Randomize or shuffle a List

class myclass
{
public int MyValue{get;set;}
public myclass(int input){MyValue = input;}
}

main()
{
List<myclass> a = new List<myclass>();

for (int i = 0; i < 10; i++){a.Add(new myclass(i));}

string h = string.Empty;
for (int i = 0; i < 10; i++)
{h+=a[i].MyValue.ToString();}
MessageBox.Show(h);

Random rnd = new Random();
var nnn = a.OrderBy(b => rnd.Next());
//var nnn = a.OrderBy(b => Guid.NewGuid());


h = string.Empty;
foreach (myclass m in nnn ){h += m.MyValue.ToString();}
MessageBox.Show(h);
}