I agree with Joe - 'speak' is formal than 'talk'. Whoever told you that 'talk' is more 'elegant' was mistaken.
For example, you would say that the President came out onto the balcony of his residence and 'spoke' to the people. This is much more formal - you wouldn't say 'talk' in that situation. 'Talk' suggests a more informal chat with friends, and wouldn't be appropriate for such a formal situation.
'Speak' basically means to use language. You say 'I speak English' not 'I talk English'.