An ethernet modem generally allows you to share your internet connection with many computers without needing any other hardware. They normally have a built-in firewall and depending on the model you buy, a wireless network access point and mini-switch as well. When you get an ethernet modem, you get a private network address (192.168.x.x or 10.x.x.x, etc) and the router will handle getting the data to the internet back back to the right PC - you share the single public IP that is assigned to you. If you don't already have a network, you will need a network cable as well when you get an ethernet modem (if it has a built-in switch) or a crossover cable if it doesn't.
The other option is getting a USB modem. This one will act just like your normal dial-up connection, just over adsl. Using this, the public internet IP assigned to you is on your own PC. This means you need a good firewall and antivirus package on your pc. When you get this, you need a USB cable - normally supplied with the modem as far as I know.
As for ISP, I am currently with WebAfrica, but I'll probably try OpenWeb / IS at some point in the near future.