親プロセスが先に終了する場合は問題がないが、子プロセスが先に終了して
しまうとリソース上解放されずに残ってしまうため、親プロセスが
waitをする必要がある。ただし子プロセス生成後、すぐにデーモン化
することでゾンビプロセスの心配はない。ということでしょうか?

となると親プロセスが先に終了することが保証されている場合にのみ
1,2の方法に特別な違いはない、ということになりますか?

認識がずれていそうなので確認させてください。