Just from glancing at the wiki: http://en.wikipedia.org/wiki/XBMCNetwork/Internet protocols:
UPnP, SMB/SAMBA/CIFS, XBMSP, DAAP, HTTP, HTTPS, FTP, RTSP (RTSPU, RTSPT), MMS (MMSU, MMST), RTMP, Podcasting, TCP, UDP,
SFTP, RTP, MythtvPlugins and scripts (apps/gadgets/widgets)
XBMC features a Python Scripts Engine for addon extensions, WindowXML application framework (a XML-based widget toolkit for creating a GUI for apps / widgets) in a similar fashion to Apple Mac OS X Dashboard Widgets and Microsoft Gadgets in Windows Sidebar. Python widget scripts allow normal users to add new functionality to XBMC themselves, (using the easy to learn Python programming language), without knowledge of the complex C/C++ programming language. Current plugin scripts include functions like ... scripts to front-end control PVR software and hardware ,.....