Are you looking for something like this?
IOrderedEnumerable<OrderLineItem> orderedItemList= OrderList.Cast<OrderLineItem>() .OrderBy(x => (x.PropertyOne > 0 && x.PropertyTwo == 0) ? 0 : 1);
This will lead to the fact that both criteria will be true first, and all the rest after. If I misinterpreted your specification, please ignore it.
source share