Question: I am currently working on a c# project and I need to have a method which has 1 paramater to run as a thread. 

E.g. 

```
    public void myMethod(string path)
    {
       int i = 0;
       while (i != 0)
       {
          Console.WriteLine("Number: " + i);
          i++;
       }
    }

```

How can I call the above method from another method, but running inside a thread.

Thanks for any help you can provide.

Answer: 
```
new Thread(o => myMethod((string)o)).Start(param);

```
Simply wrap that method call in a method that takes no parameters, but which calls your method with the right parameter.

```
public void myWrappingMethod()
{
    myMethod(this.Path);
}

public void myMethod(string path)
{
    // ...
}

```

Or if you have lambdas available, simply use one of those (per Jon Skeet's answer).