Well, your primary misconception may actually not have been that CodeGuru has a C++/CLI section (as mentioned over there in the VC++ section), but rather missing that you're writing a C++/CLI program in the first place.

It's generally not recommended to use native library routines (here: _beginthread()) in a managed environment without a real need to do so, but can become particularly problematic if multithreading is involved. For multithreading the real .NET way, have a look at the System::Threading namespace.