Thread.Sleep() method will immediately place the thread under wait state.Thread.Suspend() method will not go into wait state until .net determines that it is in a safe place to suspend it.
stop(), suspend() and resume() are the methods used for thread implementation. stop() - terminate the thread execution, Once a thread is stopped, it cannot be restarted with the start() command, since stop() will terminate the execution of a thread. Instead you can pause the execution of a thread with the sleep() method. The thread will sleep for a certain period of time and then begin executing when the time limit is reached. But, this is not ideal if the thread needs to be started when a certain event occurs. In this case, the suspend() method allows a thread to temporarily cease executing. resume() method allows the suspended thread to start again.