How do I programmatically delete an order?
Loading it like a normal entity did the trick.

How to load and delete commerce order programmatically

$ord_id=121;
$order = \Drupal::entityTypeManager()-&gt;getStorage('commerce_order')-&gt;load($ord_id);
$order-&gt;delete();


Here is the entire snippet on my ultimate goal which was deleting abandoned orders in the cart.
How to remove commerce orders automatically

How to delete ghost commerce registrations in cart

Custom cron to delete commerce orders programmatically 

Load a view programmatically loop through values and delete orders

/**
 * Implements hook_cron().
 */
 function my_module_cron() {
   //load a view showing orders still in cart
   $view = \Drupal\views\Views::getView('commerce_carts');
   //the name of your display, i chose a simple rest display with the order_id field
   $view-&gt;setDisplay('rest_export_1');
   $view-&gt;execute();

   foreach($view-&gt;result as $row){
     //load the order
     $order = \Drupal::entityTypeManager()-&gt;getStorage('commerce_order')-&gt;load($row-&gt;order_id);
     $oid = $order-&gt;id();
     //delete the order
     $order-&gt;delete();
     //log to dblog
     \Drupal::logger('afc_commerce_registration')-&gt;notice('Clearing ghost registration, deleted: @oid.',
       array(
           '@oid' =&gt; $oid,
       ));
   }
 }


You can add the Created date field to the view, and test time values before deleting. In my case, it doesn't matter. 

Thanks for the help everyone