The TeXbook documents two separate things: the set of primitives provided by the TeX binary, and the macros defined by Knuth in
plain.tex on top of this. The primitives are available in LaTeX2e (though a few are renamed, for example
\end is saved as
\@@end), but LaTeX implements only some of the plain macros (and not necessarily in exactly the same way).
In terms of documentation, LaTeX’s user interface is described in Lamport’s book. For programmers, there is
clsguide but no ‘definitive’ document saying which part of
latex.ltx/primitives can and cannot be used: one has to pick this up to some extend by experimentation. One can read
source2e for full details of the LaTeX2e kernel.
\sl are user-level commands (no
@ symbol), so their status is clear: they are not in Lamport’s book as part of the LaTeX2e document syntax so should not be used. As noted in the answer by Gustavo Mezzetti, the NFSS mechanism is available for font selection.
From a historical point of view, LaTeX was originally a file loaded on top of plain but that has not been the case for a long time: LaTeX is a separate TeX format which has its own approach.