|This article needs additional citations for verification. (January 2012)|
Limitations in the original DCC protocol prevented the transfers of very large files, or groups of files. XDCC was developed to allow batching of files together, and requesting/sending those files to others.
XDCC was initially a script written in 1994 for ircII by Xabi. This script extends the ircII DCC command. Now XDCC refers to IRC bots running file sharing programs in general. XDCC bots serve one or more usually large files for download using the DCC protocol. Though XDCC is commonly employed in distributing illegal content, such as warez releases of software, music, and movies, it can also be used in legal ways.
Unlike peer-to-peer transfers, XDCC servers are often hosted on connections with very high upstream bandwidth, sometimes in excess of 100 Mbit. Often FTP servers are also running on the XDCC servers to facilitate uploading of materials to them. Many XDCC servers run on security compromised computers.
Since browser-based IRC scripts are not compatible with the DCC protocol, users need to install a program such as mIRC on their computer. In order to receive files, the software has to be properly configured, otherwise downloads will be rejected by the software. 
To use XDCC, one can send a private message (query) or send a CTCP command to a bot, using an IRC client. The user can ask a bot what files it has by private messaging "xdcc list" to the bot. However, this feature is often disabled as to not attract too much attention. When a user wants to download a packet or file from a bot, the user would type something such as "xdcc send #<pack number>" to the bot. The bot will either start sending the user the packet or the bot will place the user in a queue, and force the user to wait their turn. Some channels have special rules, for example requiring the user to join a second channel within a certain amount of time after starting the download to avoid interruptions. 
Addons exist, such as XDCCKlipper (for mIRC) which listen to adverts listed in a channel by the bots and save them to a separate window to facilitate easier browsing and allow users to view the status of a bot (speed, queues, slots etc.).
- Sachs, Marcus; Piccard, Paul et al. (2005). Securing IM and P2P Applications for the Enterprise. Syngress. p. 387. ISBN 978-1-59749-017-7. Retrieved 2013-04-09.
- Charalabidis, Alex (1999-12-15). "DCC: File Servers and XDCC". The Book of IRC: The Ultimate Guide to Internet Relay Chat (1st ed.). San Francisco, California: No Starch Press. pp. 219 – 220. ISBN 1-886411-29-8.
- Wang, Wallace (2004-10-25). "Instant Messaging and Online Chat Rooms: Downloading files from IRC". Steal this File Sharing Book (1st ed.). San Francisco, California: No Starch Press. p. 66. ISBN 1-59327-050-X.
- Bandwidth example of a real XDCC bot
- XDCC - An EDU Admin's Nightmare
- How To Configure mIRC For Downloading
- How To Download With mIRC - Troubleshooting
- XDCC / IRC: A Beginners Guide
- xdcc script 3.3.0 beta - The original XDCC script