Couldn't it be possible to have a botnet upgrade into different versions, allowing it to split?
Clarification:
Virus writer releases virus A and sets up control server A.
Botnet A gets large, and the writer is worried about authorities, so he sets up servers B and C, as well as writing two updates.
Botnet A gets update B or update C from control server A.
The update installs the new virus and removes the old one.
Botnet B gets large, virus writter sets up servers D and F.
Process continues.
If it's split before the AVs pay any considerable attention(or if you split enough to confuse them), a writer could write a fast spreading botnet, without having to worry about it getting too large.
I would imagine that setting up new servers and updates might be a hassle though.