"The right internet connection" for even a semi-professional webhosting company is going to be at least a 100Mbit line. You may want to look into a professional server hosting company for this.
Likewise, you're going to want a fairly beefy machine - lots of CPU power, lots of RAM, large and fast hard drives, preferably in RAID1.
In terms of software, I'm going to assume you're going to go with Apache. In that case, you absolutely need to set up FCGId and SuExec; here is a page that explains how to set both of them up in tandem. This will make the job of securing your system so much easier I can't even begin to describe it, and using fcgid instead of mod_php will let you take advantage of apache's faster and lightweight worker threads.
Your customers will likely want to be able to upload their sites via FTP; while I'm personally partial to vsftpd the choice of FTP servers really doesn't matter so much as long as you make sure to chroot each user to their own home directory.
A much more secure option would be to allow only sftp in chroot mode; this page explains how to set this up.
Most of your customers will ask for PHP and MySQL; make sure they're installed with all the bells and whistles.
Write some scripts to automate the creation of new webhosting space; this really isn't a job you'd want anyone who only ever uses cpanel to be responsible for.
... That's my generic advice for starters; I have to get to band practice or I'd add more.