The alternative is to have them take time off of their dayjob and travel on-site for technical interviews.
In the real world, candidates are greatly appreciative of take-home assignments that let them work in the comfort of their own home, on their own equipment, at times that work best for them.
I feel like this is the solution that values candidate time the most. They don't have to do an interview, and I'm paying them for their time immediately.
Is it really worth it to lose a day in your weekend for a couple hundred bucks and the hope of getting yet another assignment or a job?
And, if we're being really honest here, there's a ton of informal backchannel talking that goes on, so your interview "performance" regardless of medium is affected by that at many places. I think if you aren't actively working to make your interview process objective, it's being strongly affected by many biases and informal relationships.
That's all to say that on the balance, taking up "some" or "all" of a candidates time isn't that interesting of thing to think about because the process is so broken in so many other ways and this one doesn't have a huge impact.
I can't get that from a take home assignment.