I'll have to go with the crowd here and say NMap. It's easy to customize the scan to your needs, and it has more features than just port scanning (OS detection)..