apt-mark controls two independent flags on installed packages.
Manual vs. Auto
APT tracks whether each installed package was explicitly requested (manual) or pulled in as a dependency (auto). Packages marked auto get removed by apt autoremove when nothing depends on them anymore.
Hold vs. Unhold
A held package is marked so APT will not automatically install, upgrade, or remove it. Useful to block a known-bad update or defer changes to a critical package until you are ready.
References
man apt-mark