C# in depth by jon skeet 4.0 experiment and re writing my own example file which explain as in xinyminutes.com