Can any one explain the difference between portable class library and shared class library in Xamarin cross platform

网友答案:

A portable library is a compiled piece of code that is referenced by other projects; the result of compilation is an assembly that is loaded by the referencing app at runtime. A shared project is not compiled into a stand-alone assembly; instead, all of the code in the project is included in the compilation of the referencing project as if you had added the files that are in the shared project directly to the referencing project. There are pros and cons to both approaches, but it seems that the community is gravitating towards PCLs. There are cases where the use of Shared Projects is still necessary, though (OpenTK being one such example).