I might not be the most efficient way of doing it but what I do is use lists
so what i do is
TypeOfArray[] myarray = new TypeOfArray[];
List<typeofarray> toKeep = new List<typeofarray>
foreach(TypeofArray element in myArray)
{
if(!removeConditionMet){
toKeep.Add(element);
}
}
myArray = toKeep.ToArray();
Hope this helps