OK - there are two Smalltalk systems for dotNET that I know of.|
One began development well before the first release of dotNET, and was done somewhat in collaboration with MSFT. (S#)
S# is still not available, due perhaps in part to Dave Simmon's limited resources and perfectionist tendencies. But compromises have been documented where MSFT leaned toward supporting static languages at the expense of dynamic languages.
The other Smalltalk system is more recent from http://www.refactory.com
This one is by more pragmatic people, but just as intelligent. There are large gaps in performance from what these same people could do if they were delivering on, say, a C platform.
Not sure dynamic languages and dotNET are as compatible as they could be, or will be in a few years.