I written many scripts for cisco routers and switches, and every time I have used Net::Telnet. It works great, I have a script that changes the passwords on all devices. Another script clears and then checks all the interfaces for errors. I also have a script that resores the configuration from a tftp server. And to top it all off I have a script that updates the IOS from a tftp server.
P.S. I have over 200 cisco devices I take care of.