Despite your current requirement that the website is only translated into Spanish, you can never know your future requirements for other languages - the default ASP.NET key/value pair resource file solution makes a lot of sense for this and other reasons.
Using local resource files (which are effectively XML in a pre-set schema) on the server avoids costly round trips to the database every time a page loads (although this could be mitigated by output caching) and makes it very easy to send your phrases for translation - all of the phrases are in one place, in the same file. There are a range of tools available to work with them as you might expect given the ubiquity of .NET. It is even possible to translate a resource file using Bing to give your translator a head start.
Using a key rather than matching string literals makes a lot of sense given the issues of the same string being used in multiple contexts (where it may be desirable or necessary to translate the text in different ways for each context - words don't always share the same possible meanings in different languages) or issues like capitalisation, where you may want the same string with different capitalisation (although this should not be an insurmountable problem programmatically).
Lastly using the built in localisation API in ASP.NET makes it trivial to change the language and UI (date formats for example) based on the locale the user has chosen on their computer - and is sent in the request headers by the browser. A Spanish speaking visitor turns up at your site, and it is already in Spanish - no need to hunt for the control to change language based on flags or a drop down list. This can be manually set or overridden by you if required, and of course only applies if your site has a resources file appropriate for the locale, but is an incredibly powerful feature available out of the box.
If you are using ASP.NET Web Forms then I would definitely second the recommendation for using Resharper to extract your strings to a named key for you, but you should be aware that it cannot yet do this with Razor views if you are using ASP.NET MVC or Web Pages - although it will still offer to move strings from the model in the case of MVC (and indeed encourage you to do so).
Lastly, please be aware that localisation is about more than language - your users may use different formatting for dates, numbers, telephone numbers or even different text direction in some cases. This may not apply in your project but is certainly something to be aware of.