There are 2 modes for RealVNC...... Service Mode and Virtual mode.
The modes are really 2 different things and should not be confused.
Most users will use Service Mode.
Service Mode:
- VNC must be enabled via raspi-config or GUI config tool.
- When enabled, automatically runs at startup.
-
Boot to desktop is required.
- If no HDMI monitor then need to set a fixed resolution using sudo raspi-config.
- Mirrors the local desktop session (One session only).
Virtual Mode: (vncserver)
- No enable setting required. (The VNC config setting is for Service Mode only).
- Boot to desktop not required but desktop must be installed to the OS.
- Does not autostart by default* (Must type vncserver at local command line or via ssh each time)
- Does not show the local desktop session.
- Can have multiple independent sessions running. ip:1, ip:2 ..... etc.
- It is possible to run a Service Mode session and any number of Virtual Mode sessions concurrently.
*Virtual mode can be made to autostart by adding this to /etc/rc.local:
Unless specified otherwise my response is based on the latest and fully updated RPiOS Buster w/ Desktop OS.