ArrayList temp, temp2; for ( int i = 0; i < aMessagesList.Length; i++ ) { temp = view_as<ArrayList>(aMessagesList.Get(i)); if ( temp != null ) { temp2 = view_as<ArrayList>(temp.Get(4)); delete temp2; delete temp; } }