It depends on what you actually want to learn. If you just want an IRC bot, I'd suggest using one of the billions of libraries out there to do it--and maybe even use this as an opportunity to learn a new language (Python, Java, and C# all have IRC libraries). If what you actually want is to learn network programming, start with some basic socket tutorials online and go from there. I have a simple
chat program in C that you're free to dig around in. It has basic client-server communication, and the GUI is with curses, so it should be a pretty simple start. Incidentally I also have a
client in C# that communicates with the same server. I can provide source for that if you're interested.
If you start right out the gate making an IRC bot, you'll probably get overwhelmed. Start by making some simple network programs based on your own protocols, and then start reading RFCs and doing their protocols, and then move to IRC. That's what I would do.
As for tutorials and all that,
googling is your friend. However,
Beej's Guide is a pretty standard guide, and
this is a good unix socket FAQ.