Using Windows XP is not ideal however some of those things can be achieved.
IIS
No. It only runs on Professional and higher
File Shares
Yes, this can be done but not as efficiently as a real server OS. Memory allocation etc is no designed for large file shares.
Printer Sharing
This is fairly straighforward
DHCP
Can be done with third-party software
Media Streaming
Yes, again with third-party software
Personally I would recommend ditching Windows altogether and use some form of linux. Better designed to run as a server, more features, more stability, better security...and free.
I don't know how familiar you are with Linux but there are many good guides on setting up an Ubuntu home server (just google it)
Replace iss with an apache server
XMBC is great for media streaming
SAMBA for file shares. Can share to Windows, Mac, Linux, UNIX, Android, IOS, BSD - pretty much anything you are going to use at home.