But there is one major hurdle I see when producing dialogue, and that is the inter-speech text, the non-spoken parts. The reason this is a problem is because when we converse in real life, there's no pause of exposition. For example, if I tell my brother, "What are we eating for dinner tonight?" he's not going to wait as an unknown narrator described his thought process.
I'm no screenwriter, but a script is, in my opinion, the best way to get through this. The trick is to get as much of the spoken words of the characters onto the page as possible. The inter-speech text is kept at a bare minimum, usually restricted to basic physical descriptions of characters, settings and action; you keep this so bare that you're almost writing sentence fragments.
As you read and proofread the script draft, you'll notice that the pacing of the dialogue is closer to what you get in real life. Polish up the speech as much as you can, and then go back and fill in the blanks using those sentence fragments as a guide, expanding on them, elaborating on description and whatnot.