I was reading about the Edge Transport Role on Exchange 2010. It looks like this is the only way to put Exchange the Internet. Is this true? Also, doesn't this require a second hub transport server? So I need two servers to put Exchange on the Internet?
I also read the client access server role can do it but I need a MS ISA server. Can't I use a regular firewall from Cisco or something?
It's perfectly fine to have a single server with the Mailbox, CAS and Hub Transport roles on it. Just go through Configure Internet Mail Flow Directly Through a Hub Transport Server on TechNet to make your CAS server capable of sending and receiving email to the internet.
The Edge Transport server is totally optional and if you have some sort of other hardware firewall device, that's also perfectly fine to sit in front of your Exchange server in place of TMG or ISA Server.