Names given to the Spanish language
Formally speaking, the national language of Spain, the official Spanish language, is the Castilian language (as opposed to regional Spanish languages like Galician, Catalan, Asturleonese and Basque). As such both names, "español" and "castellano", have distinct and independent meanings that may be required for clarity in some specific contexts.
Generally speaking, though, both terms can be used to refer to the (national) Spanish language as a whole, with a preference for one over the other that depends on the context or the speaker's origin. "Castellano" (as well as "Castilian" in English) has another, more restricted, meaning, relating either to the old Romance language spoken in the Kingdom of Castile in the Middle Ages, predecessor of the modern Spanish language, or to the variety of Spanish nowadays spoken in the historical region of Castile, in central Spain.
Names given to the Spanish language
During the presence of Moors in Hispania, Spanish was sometimes given the name "cristiano" ("Christian") to distinguish it from the Arabic and Hebrew languages. This term is still used occasionally today to refer to the language, in a jocular tone.
The expression "Hábleme en cristiano" "talk to me in Christian", uttered to people not speaking Spanish at the moment, is used in opposition of the other languages of Spain, which is felt as annoying by them (Catalonia, Galicia and the Basque Country, but not in the Americas). "Háblame en cristiano" is also a phrase used to ask for clarification in a conversation, when the topic of the discussion is not clear or is vaguely hinted at by one of the speakers.