How to do voids like this, if you can? void Thing(Void otherVoid)

The title does the explanation job.

First of all I guess you talk about “a method” because “a void” is not a thing. There are void methods (a method that doesn’t have a return value) and there are void pointers (pointers to an untyped memory area). So stop misusing the term void that way.

It’s not at all clear what yout title actually asks about. I would guess you want to pass another method as callback to your method. Please invest a little bit more time explaining what you want to do. A single crypting sentence with misuse of terminology doesn’t really help your case.

In case you ask about passing in a callback method, you have to use a delegate type that matches the signature of the method you want to pass in. In .NET / C# we have several predefined generic delegate types. Specifically System.Action would be a method with no arguments and not return value and you can declare your method like this:

public void MyMethod(System.Action callback)
{
    // do whatever you want
    // here we call our callback
    callback();
}

This is how you would call your method:

MyMethod(YourCallback);

this is how your callback method would need to look like

void YourCallback()
{
    // [ ... ]
}