According to Oracle documentation, recover database will automatically recover the database as far as it can, it might need archived logs and redo log. So we call it as complete recovery.
On the other side, recover database until cancel will guide DBA to implement the recovery process manually until there's no archived logs. You can stop the recovery any time you want and open it with resetlogs. So we call it incomplete recovery.