A catch-all account is an email address that collects all the mail sent to your domain name not sent to the other email addresses known to the server.
Any emails sent to misspelled recipients at your domain, for example, will be “caught” by the catchall account. For example, the catchall could be defined as all@domainname.com. Suppose an email meant for john@domainname.com is actually sent, misaddressed, to johndoe@domainname.com. The email will end up in the catchall mailbox of all@domainname.com. Without a catchall defined, the email would have been bounced back to the sender instead.
An advantage of the catchall is that it is like having unlimited aliases.
One disadvantage of a catchall is that more Spam may be sent to your domain since messages are not bounced but accepted by default to non-defined email recipients.