An email attachment is a computer file sent along with an email message. One or more files can be attached to any email message, and be sent along with it to the recipient. This is typically used as a simple method to share documents and images. A paper clip image is the standard image for an attachment in an email client.
Email standards such as MIME don't specify any file size limits, but in practice email users will find that they can't send very large files.
Over the Internet a message will often pass through several mail transfer agents to reach the recipient. Each of these has to store the message before forwarding it on, and may therefore need to impose size limits. The result is that while large attachments may succeed internally within a company or organization, they are unreliable when sending across the Internet – and for that reason sending systems often arbitrarily limit the size their users are allowed to submit.
As an example, when Google's gmail service increased its arbitrary limit to 25MB it warned that: "you may not be able to send larger attachments to contacts who use other email services with smaller attachment limits". In general, 10MB is considered safe for the maximum size of an email. Email users can be puzzled by these limits because the MIME encoding, which typically uses Base64 adds ~33% overhead – so that a 20MB document on disk exceeds a 25MB file attachment limit. 
Dangerous file types
Email users are typically warned that unexpected email with attachments should always be considered suspicious and dangerous, particularly if not known to be sent by a trusted source.
However, in practice this advice is not enough – "known trusted sources" were the senders of executable programs creating mischief and mayhem as early as 1987 (with the mainframe-based Christmas Tree EXEC), so since the ILOVEYOU and Anna Kournikova worms of 2000 and 2001 email systems have increasingly added layers of protection to prevent potential malware – and now many block certain types of attachments.
History, and technical detail
Originally Internet SMTP email was 7-bit ASCII text only, and attaching files was done by manually encoding 8-bit files using uuencode, BinHex or xxencode and pasting the resulting text into the body of the message.
Modern email systems use the MIME standard, making email attachments more utilitarian and seamless. This was developed by Nathaniel Borenstein and collaborator Ned Freed with the first MIME email attachment being sent by Nathaniel Borenstein on March 11, 1992 and the standard being officially released as RFC2045 in 1996.
With MIME, a message and all its attachments are encapsulated in a single multipart message, with base64 encoding to convert binary into 7-bit ASCII - or on modern mail servers running Extended SMTP, optionally full 8-bit support via the 8BITMIME extension.
- "Setting Message Size Limits in Exchange 2010 and Exchange 2007".
- "Google updates file size limits for Gmail and YouTube", geek.com.
- "Maximum attachment size", mail.google,com.
- "What is maximum email attachment size (Gmail, Yahoo)", tothepc.com.
- "Raw vs. Encoded Email Message Size — What's the Difference?".
- "Some file types are blocked", mail.google.com.
- "You may receive an "Outlook blocked access to the following potentially unsafe attachments" message in Outlook", microsoft.com.
- "How do I use UUencode/BinHex/MIME support?", winzip.com.
- Father of the email attachment, Patrick Kingsley, The Guardian, 26 March 2012
- "The MIME guys: How two Internet gurus changed e-mail forever ", February 01, 2011, Jon Brodkin, Network World
- "MIME & Me (nsb)". Guppylake.com. 1992-03-11. Retrieved 2013-10-31.