Depends on where you come from. From C, it's basically what you did with C with bells and whistles (multiple return types instead of OUT parameters for instance).
From Scala/Java/C#, if you really like working with these languages, I don't think you'd enjoy Go.
And while Goroutines sound nice at first, they come with many issues that languages that had similar concepts (like ADA tasks) did not have.