A CLI, or command-line interface, is a way to interact with a computer by typing text commands into a terminal window. A GUI, or graphical user interface, allows a user to interact with a computer by using a keyboard or mouse to manipulate visual elements on the screen.
CLIs are used on computers and other devices such as routers and switches. The command line allows the user to customize commands with special parameters to more precisely control how the computer or device functions. Some tasks can be scripted, making repetitive tasks more efficient and less prone to error. The command line can be faster in some cases, but requires the memorization of numerous commands over time. For this reason, the command line interface normally is used only by professionals and advanced home users.
A GUI is easier to use for more casual users. Many common operations, such as copying and pasting, can be performed by using just the mouse. Icons and menus take the place of text commands and do not have to be memorized. It is also easier to switch between multiple active tasks using a graphical interface. However, advanced operations may only be accessible via the command line.