I don't think this is a fair assumption. The work is going to be defined by the client... so if the client wants .Net 3.0 experts to maintain a legacy system, then that's what they are going to get. I have worked for and with Indian IT firms (I'm not Indian myself) and in most cases the directive is to use latest standards and best practices. In my case it has to do with cloud architectures. Outsourcing is something that still needs onsite experts that can help guide the project and critique/review what is being developed. Clients that are mostly hands off during the development are inevitably going to have significant struggles.