Well as I understand it or rather, as it pertains to my experience…
Outsourcing moves jobs or roles to another company (and/or another country). i.e. contracts out for services. The company I work for has done this to many of our branches in all of our European operations. Quality has suffered imho.
Offshoring is when a company moves part of its operation to another country but maintains ownership of that operation i.e. still directly employs people, just overseas. That’s what my company has done in India. Retrenched a good many European employees but hired as many or more in India to do same at a much reduced cost.
Now about half of our engineering in research & development is done there. All new IT engineering posts are being created there, hardly any in Europe.
Interestingly, our Indian back-office operation has been so successful, it is branching it off as a local business where it offers as a service for other companies. :-|
There is talk of providing the same IT/telco services we provide all over Europe locally in India (and other parts of Asia) as well.