c# list remove inside foreach