A major difference (re dependency on the producer) is that go is a language while .net is a platform. It would be (relatively) easy for users of golang to step away from Google if they became a problem while retaining their codebases. Moving from MS's platform is harder (mono is out there, but is it sufficiently complete at this point?).