What is the best way to call a function from another script

I keep running in to this problem with send message and such because sometimes it works sometimes it doesn’t work. All i need is some demonstrations of ways to use send message in a better way or eny other thing that is simpler to call a function from one script to a different one.

In c# it would be to make the method public or static or even both.

eg…
public static void SomeMethod()
{

}