The things you have to consider when buying a book are these:
A* Is the author Spanish? If the answer is NO, the book will probably not be as good as those made by a Spanish author. Natives know their language perfectly.
B* Is the author an expert in teaching Spanish? Besides being a native from Spain he has to be a good teacher, preferably a professor, to produce books of high quality.
C* Is the book focused on teaching or on nice pictures, and wasted space inside? A book with nice pictures will be marketing, a book filled with content will be useful.
Taking these points into consideration here are some of the best books to learn Spanish available right now:
1. A GOOD SPANISH BOOK!, UNIVERSITY ACADEMIC EDITIONS
As you can see by the cover, the author has the highest standards. He is a native professor from Spain, with a doctorate in Spanish, and this is the best book for learning Spanish if you are a beginner. It's the book with the highest scores in terms of results, easy explanations and efficiency according to several institutions. The exercises inside have corrections included, so you can perfectly learn by yourself with this one.
2. ESPAÑOL 2000, ADVANCED LEVEL, SGEL PUBLISHING
This book is correct for advanced students. It's made by Spanish teachers from high schools in Spain. The advanced level book is the best one, the others are a bit chaotic in terms of material and explanations. Half of the book are exercises that are not corrected, so you might need someone to correct them.
3. SUEÑA, ADVANCED LEVEL, ANAYA
Made by a big Spanish publishing company, it has nice exercises and reading materials for advanced students, so if you are already an advanced student and you want to complete your knowledge, this book has extracts from literary pieces and other resources that will be interesting for the advanced learners. A good complement to have.
4 NUEVO ELE, ADVANCED LEVEL, SMELE
As you can see you have several options to choose from. If your level is basic or advanced we recommend you the second book on the list because of the method, the author, and the results. For advanced students, the first book of the ranking is the best book to learn Spanish.