There is not much difference between speak and talk. They are usually both possible in most situations.
Formality
Talk is less formal than speak. In fact, talk is the usual word to refer to informal communication.
- I want to talk to you.
- I think you should talk to him.
- I don’t know why she has stopped talking to me.
- I would like to talk to you about the film I watched yesterday.
- Stop talking nonsense.
- We talked for an hour.
Speak is often used for exchanges in more serious or formal situations.
- Speak your mind.
- I was so shocked that I could hardly speak.
- They are not speaking anymore.
- Actions speak louder than words.
Speak is not usually used before sense, nonsense and other words with similar meanings.
Lectures etc
Talk is often used for the act of giving an informal lecture. Speak is preferred for more formal lectures.
Compare:
- This is Ms Susan Fernandez, who is going to talk to us about cookery.
- This is Professor Susan Fernandez, who is going to speak to us on recent developments in stem-cell therapy.
Speak is the usual word to refer to a person’s ability to speak a language.
- She can speak English. (NOT She can talk English.)
- She speaks ten languages fluently.
Speak is also the word to refer to speech on the phone.
- Could I speak to Alice, please? (More natural than ‘Could I talk to Alice?’)