Order List C# by custom function with optimal performance
===

Say I have a function 
 

    public float GetOBJECTActivity(OBJECT ob){
    
       // returns some float
    }

and inside another function, I get a list of OBJECT (`List<OBJECT>`)
that I want to sort according to the `GetOBJECTActivity` function result (descending ot ascending).

How can I do that in optimal performance in C#? I will doing similar operations a lot in my project and I want to make sure I use the fastest way and most elegant.

Thanks