c# list remove vs removeall