I'd expect rm -r to be close to the most efficient way to clear a directory. If you just forcibly unlink the root directory node you won't clear all of the files in it, you'd just wind up with unreachable inodes in use. You need to actually visit each inode and clear it.
If you want to clear the directory quickly you can try running rm -d as superuser. (It is a GNU option, they won't even let you try as anyone else, and it is not guaranteed to work on all operating systems and filesystems - some don't want you to do something that stupid.)
But filesystems vary widely in how quickly they handle this particular task. If you think that you'll need to do this often then investigate and choose one that makes it fast.