Second it's a licence. Well the purists won't really agree on this but, it's a way to see it, cause most of the time one uses the term GNU it's related to the GPL (GNU General Public License). The GPL is a license or free software protecting the freedom of the users to run, copy, distribute, study, change and improve the software. More precisely, it refers to four kinds of freedom, for the users of the software:

The freedom to run the program, for any purpose (freedom 0).

The freedom to study how the program works, and adapt it to your needs (freedom 1). Access to the source code is a precondition for this.

The freedom to redistribute copies so you can help your neighbor (freedom 2).

The freedom to improve the program, and release your improvements to the public, so that the whole community benefits (freedom 3). Access to the source code is a precondition for this. For a complete definition of free software I once again refer to the GNU website : http://www.gnu.org/philosophy/free-sw.html

Then GNU is a philosophy, the philosophy of the Free (as in Freedom !) Software Movement. The motivation for our development of free software is about freedom: people should be free to use software in all the ways that are socially useful. More about the GNU philosophy: http://www.gnu.org/philosophy/

Linux is probably the most prominent and known software in the GNU project. Although there are a lot more of software needed to build a complete operating system, Linux is only the kernel (more about this). A list of free software can be found in the gnu directory : http://www.gnu.org/directory/.