Curiosity lead me to visit the Cup o'Cad link in some of your other posts, and I think I might have seen a comment there where you found some info about this, but for what it's worth, most problems I have had with access violations have proven to be a result of transactions and/or objects not being closed/disposed properly. It can sometimes be a bear to track them down, since the spot in the code where the error occurs is often not the same spot as where the real problem is.
That said, the reason I did not reply to this post the first time I read it is because your example is a Dynamic bref property, and I have read various things about there being problems dealing with Dynamic blocks in .NET. Since I don't have any code of my own that deals with Dynamic blocks, I can't really comment on those issues. I figured someone else would chime in about that.
Dave O.