so in that case, what the actual reason. EF-S lens is better than normal EF lens?:think:
EF-S is not better per se. EF-S merely stands for ElectroFocus-Short. The distance from the rear element to the sensor is shorter, thus minimising the material cost, as you no longer have to manufacture a 17mm lens for 35mm, but just for 1.6x crop.
In a nutshell, you can only use EF-S lenses on the following 1.6x crop cameras: 300D, 350D, 400D, 20D, 30D, 40D. They cannot be mounted on the 10D (except with modification done to the lens, at user's risk), 1D series, and 1Ds series.
Whether you mount an EF lens or an EF-S lens on your camera body, what you see in the Viewfinder (VF) is what you get (there will be some difference because the viewfinder is not a 100% coverage VF, but a 97 or 98% coverage VF).
Whether you mount an EF lens or an EF-S lens on your camera body, all focal lengths will still be subject to the 1.6x crop factor. Hence, a 100mm EF-S lens on your 40D will give a Field of View similar to a 160mm lens on 35mm format, while a 100mm EF lens will do the same thing.