Comme d'autres l'ont mentionné, à peu près tout ce qui se trouve dans le bloc "unsafe" peut donner lieu à un comportement défini par l'implémentation ; l'abus des blocs "unsafe" vous permet de modifier les octets de code qui constituent le runtime lui-même, et donc tous les paris sont ouverts.
La division int.MinValue/-1
a un comportement défini par l'implémentation.
Lancer une exception et ne jamais l'attraper entraîne un comportement défini par l'implémentation -- terminer le processus, lancer un débogueur, etc.
Il existe un certain nombre d'autres situations en C# où nous sommes obligés d'émettre du code dont le comportement est déterminé par l'implémentation. Par exemple, cette situation :
http://blogs.msdn.com/ericlippert/archive/2006/04/06/odious-ambiguous-overloads-part-two.aspx
Cependant, les situations dans lesquelles un programme C# sûr et bien conçu a un comportement défini par l'implémentation devraient être assez rares.