To the OP:
If you want to learn how botnet's work, buy one! Here's a crappy one for cheap:
http://www.worldwiredlabs.com/Buy it, play with it. It's perfectly legal in a lab. You can also look for youtube videos on Netwire to see the basics:
-A builder, to create, configure, and compile your payload.
-A management console, to manage all the victim boxes calling back.
Seriously, learn the botnet ecosystem by creating and managing your own botnet. THEN start hammering on the skills once you get the big picture.
BITCHY EDIT: Really? Someone stole a cookie over this? I guess Sun Tzu was wrong when he said "know thy enemy?"
SUBSTANTIVE EDIT: You can also look for KINS Builder 2.0.0.0, which had it's source code leaked recently in supposedly "criminal forums" that were totally easy to find and join. Not as user friendly as the "supported" stuff like Netwire, but it's free, and it's the real deal.