See /mcs/class/Mono.GetOption. I started by looking at gnu getopt, but departed from it as I went on trying to make something with a higher level of abstraction/automation. It is already used by mbas, and is thoroughly guided by .net Attributes. Enjoy... Rafael Teixeira