Whats the difference between doing task.spawn(task.wait) and task.delay()?

yeah i already did one of these with spawn and coroutines but theres so many different ways to do things and i want to know what the most efficient ways are

would it be faster to do task.spawn(task.wait(4)) or task.delay(4) and what would be the difference between these two be

They technically do the same thing, although I’m not sure why you would want to do

task.spawn(function()
   task.wait(int)
  --...
end)

over

task.delay(int, function()
 --...
end)

task.delay was made for the specific purpose of yielding then resuming the provided thread, just use that

yeah in my code i would use both interchangeably because i didnt know which one was better