Two main things to realize:
a) PHP is server-side so if you want the towns to instantly appear upon selecting a county you can't in PHP. Instead you can have them submit the form with the county and have it reload another form with the towns...
b) For it to instantly appear you'll instead need to use a client-side language like the ever popular JavaScript. Using JavaScript you'll essentially load every single county and town into the users browser memory and upon selecting a county the towns will instantly appear.
You can of course use PHP to create the JavaScript. Look around for JavaScript information and tutorials, here's one (it's a little old and large but should give you the idea of using PHP + JavaScript for such a task):
http://www.zend.com/zend/tut/drop-down.php
Regarding the selection of multiple values, that's not a problem and is simple HTML. Here's a faq:
http://www.php.net/manual/en/faq.html.php#faq.html.select-multiple