In systemd-devel I found some discussion on trying to clarify the difference between them but I'm confused.
Passing the "single" kernel parameter at boot drops me into the rescue.target mode, which makes active a number of targets: basic system, bluetooth, sound, encrypted volumes, local filesystems, sockets and swap. In particular with local filesystems, it seems like I should boot to the emergency.target before running fsck. So I'm not really understanding why single translates into rescue.target. Comments?