Stores that were closing did not know until a specific date, when they'd go into work as usual and open a securely delivered packet. If the packet delivered was packet A, it informed them that they were laid off, effective immediately - all employees of that location. Packet B informed them that they were not closing. They had no idea what the case would be until the morning they opened the packet, and the packet was delivered the previous night.
Think about that at 1,000-person-layoff scale. If we apply some basic Little's Law math to the process here, we quickly see how "by-hand" firings would drag on for quite some time, perhaps needlessly prolonging the inevitable, and almost certainly disrupting work at the entire office for days on end.
There is no "good" way to do this. I've never had to do it myself, and I can only hope I never have to. The thought of how "best" to do it would keep me up for weeks. At the very least, I suppose in-person messengers are better than automated voicemail recordings, or sealed envelopes. But even if using a human messenger, a mass layoff is not going to go down well for the people being laid off. There is something to be said for ripping off the band-aid (though perhaps in timed batches, so you're not just dumping N people out into the cold, to fight over the same jobs on the market all at once).
If you're keeping any significant portion of your existing workforce, absolutely. Doing a single round of layoffs and then being able to tell the remaining employees "If we haven't talked to you, you're staying" can make the hit to morale that much smaller. It'll still lower morale, that's unavoidable. But it will take away the stress of "is my job safe?" for the remaining employees.