for a free alternative to Visual Studio, the best option is to use
Code::Blocks (nightly build) with the latest version of
MinGW, (which is the GCC compiler for windows).
Unfortunately you cannot use GCC to compile the Half-Life code, so you need to either get an old copy of VS6, or just set up CB to use its compiler.
As for the discussion on the engines, Source is based on the Half-Life code, but in reality the engine is completely different. Of course, some parts are very similar, seeing as they both use BSP technology, but they have modified it a lot, and almost everything else is new. There is no way you can say they are the same engine, just because they reused an efficient function here or there.