Update an order custom field after order complete in Craft 3
What I wrote is correct. I debugged it, and I had a problem in another place where the order did not get completed in the first place. silly me LOL.
So my answer is:

Event::on(Order::class, Order::EVENT_AFTER_COMPLETE_ORDER, function(Event $e) {
    $order = $e-&gt;sender;
    $order-&gt;setFieldValue("customFieldHandle", "My value");
});