Speak is more formal than talk. Speak is used when you are talking to someone in a formal setting or when you are addressing a group of people. Talk is used when you are talking to someone informally.