One other comment: I was under the impression that when a Task is called, it will suspend the calling thread until completion. If that is so, then why isn't the "personName" value fully determined after the first Task, and then there is no risk of a race condition when it is referenced in the second Task? Where is the error in my logic? thx!