Both verbs "to talk" and "to speak" refer to the same action.
Is their meaning exactly the same?
When is more appropriate to use one, or the other verb?
Using speak, tell, say, and talk is a very common problem for ELL.
@Siddhartha and @Em1 gave great answers, so let me quickly list only those aspects not mentioned by them.
So, I have some meaning to convey. How do I know which word to use?
Consider this sentence:
I can see they are talking, but I don't know what they are saying.
Here, you see an action, but you don't know or don't understand the meaning of the information others are exchanging.
In hope not to talk nonsense, here's my summary:
Both words have a quite broad set of definitions with subtle differences. When referring to a conversation between people there isn't a significant difference and both words can be used interchangeably. You can speak and talk to someone about something.
I talked to him yesterday.
May I speak with you for a minute?
If a conversation, however, is rather a discussion, talk might be the better choice.
We need to talk.
If a "conversation" is directed in one way only, e.g. giving a speech or speaking on the radio, than you should go with speak.
He spoke at the conference.
When referring to the usage and knowledge of languages, talking means just to use words and speaking means to be able to use a particular language. Many sources states that talk a language is simply wrong but you will find definitions on that in several dictionaries though.
I speak English and German.
I can't understand him because he talks Mandarin.
Speak can express the ability to use your voice.
I can't speak any more because of a throat injury.
And as Siddhartha mentions in the other answer, speak is more formal than talk.
Could I speak to the director, please?
There is little difference between the two words.
verb [no object]
say something in order to convey information, an opinion, or a feeling.
verb [no object]
speak in order to give information or express ideas or feelings; converse or communicate by spoken words.
These two words can often be used interchangeably. Speak is more formal, but it also gives a sense of one-sided communication.
Therefore, when the President is giving a speech, we don't say:
The President talked about XY issues. [Example 1]
The President spoke about XY issues. [Example 2]
Although, if the President is discussing these issues, we may use talked (Example 1).