Hi cadizgirl,
It really depends where you are. If you are in a city area, then you have the option of the cable operators and banwidths of upto 10mb (in theory).
Telefonica are odious, but not much more so than the rest of the ISP sharks. They've just reduced prices - you can now contract a 3mb line with free national calls for 40€/month.
Orange may be worth a look, but they were getting bad press at the end of last year.
If your Spanish is up to it, then there is a Spanish user group for internet users with heaps of opinions, tools and info: Asociacion de Internautas.
Happpy surfing