If you're new to Go, we recommend you work through the tutorial. The language specfication has all the details should you want to explore.
Once you've learned a little about the language, Effective Go will help you learn the style and idioms of programming in Go.
The first tutorial. An introductory text that touches upon several core concepts: syntax, types, allocation, constants, I/O, sorting, printing, goroutines, and channels.
A document that gives tips for writing clear, idiomatic Go code. A must read for any new Go programmer. It augments the tutorial and the language spec, both of which should be read first.
How to write a new package and how to test code.
This codelab takes the reader through the creation of a simple wiki web application. It touches on structs, methods, file I/O, http, regular expressions, and closures.
An introduction to Go for C++ programmers.
Answers to common questions about Go.
Answers to common questions about programming with Go.
Answers to common questions about the design decisions behind Go.
A German translation of the Go Tutorial.
A German translation of the Effective Go document.
A German translation of the How to Write Go Code document.
A Chinese translation of both the Effective Go and Go Tutorial documents.
Keep these under your pillow.
The built-in documentation for the Go standard library.
The built-in documentation for the Go tools.
The official Go Language specification.
A document that specifies the conditions under which reads of a variable in one goroutine can be guaranteed to observe values produced by writes to the same variable in a different goroutine.
A presentation delivered by Rob Pike and Russ Cox at Google I/O 2010. It illustrates how programming in Go differs from other languages through a set of examples demonstrating features particular to Go. These include concurrency, embedded types, methods on any type, and program construction using interfaces.
An hour-long talk delivered by Rob Pike at Google in October 2009. The language's first public introduction. (See the slides in PDF format.) The language has changed since it was made, but it's still a good introduction.
A YouTube channel that includes screencasts and other Go-related videos:
A tour, with some background, of the major features of Go, intended for an audience new to the language. The talk was presented at OSCON 2010. See the presentation slides.
Rob Pike's Emerging Languages Conference presentation delivered in July 2010. See the presentation slides. Abstract:
Go’s approach to concurrency differs from that of many languages, even those (such as Erlang) that make concurrency central, yet it has deep roots. The path from Hoare’s 1978 paper to Go provides insight into how and why Go works as it does.
A short promotional video featuring Russ Cox demonstrating Go's fast compiler.