C# 4.0 supports optional method arguments. Related to this is support for named parameters in function calles. For us it makes easier to use methods which have long argument list. It also introduces some new dangers which may lead us to messy and hard to understand code. In this code I will show how to use optional arguments and give some hints how to avoid messy code.