I think that Spanish is one of the best languages to learn because it is very commercial and it allows us to learn many different cultures, customs, music, art, historical places and food. For example: in South America, we can find the lost city of the Incas, "Machu Picchu" (in Peru), then, you can appreciate one of the many famous pictures of Diego Rivera or Frida Kahlo (in Mexico) or appreciate one of the sensual dances such as "el Tango", in Argentina. Moreover, in Spain we can find wonderful beaches, arquitecture, food like "Paella", one of my favorite dishes.
I would like to recommend for beginners and improver beginners:
Sueños 1 by Mike González, Luz Kettle and María Elena Placencia.
It is a good book in which you are going to learn many new things about different countries in the Spanish-speaking world.
As well:
Pasos 1 by Rosa María Martín and Martyn Ellis
For intermediate and advanced students:
A New Reference Grammar of Modern Spanish by John Butt & Carmen Benjamin.
This is ideal for students who would like to consolidate and improve their knowledge of Spanish grammar.
Some useful website
http://studyspanish.com
http://www.bbc.co.uk/languages/spanish/talk/greetings
http://www.wordreference.com