1.5.1 Byte Compiling

One other aspect of interpreting: the Lisp interpreter is able to
interpret two kinds of entity: humanly readable code, on which we will
focus exclusively, and specially processed code, called byte
compiled code, which is not humanly readable. Byte compiled code
runs faster than humanly readable code.

You can transform humanly readable code into byte compiled code by
running one of the compile commands such as byte-compile-file.
Byte compiled code is usually stored in a file that ends with a
.elc extension rather than a .el extension. You will
see both kinds of file in the emacs/lisp directory; the files
to read are those with .el extensions.

As a practical matter, for most things you might do to customize or
extend Emacs, you do not need to byte compile; and I will not discuss
the topic here. See Byte Compilation, for a full description of byte
compilation.