Printers have a limited amount of memory, often times much smaller than the size of a document that you are wanting to print. Printer spooling allows you to send large documents, or multiple documents, to a printer and not have to wait for it to finish printing before continuing on to your next task.
Printer spooling happens on the computer that is attached to the printer or on the network server that handles printing. Print jobs are sent to the spooler program and the program then sends those documents one at a time to the printer in the order they were received. While documents are waiting in line to be printed, you can continue to work on your computer because all of the print functions are being handled in the background by the spooler.
The benefits of printer spooling go beyond just allowing you to multi-task. While documents are lined up in the printer spool they can be paused, canceled or assigned a higher or lower place in line. If you send a large document to the printer by accident, you can cancel the printing via the spooler interface without having to reboot the printer or waste a lot of paper.
A print spooler can be installed directly on your computer for use at home. Most operating systems come with print spooling built in so most users never have to worry about it. In a large office, a print server is often used, which receives all print jobs and assigns them to the printers around the building as needed and handles all of the spooling, freeing up resources on the workers' own computers.