If you don't get a "call failed" message on the screen, then the call has dropped on their end.
If you DO get a "call failed" message, then the call probably dropped on your end.
The iPhone does give you three tones at the end of a call if you don't hang up first. That's just to let you know the call ended, and doesn't necessarily mean the call dropped.
Are you in an area that switches a lot between EDGE and 3G? The handoff between the two parts of the network has been known to be kinda risky in places where 3G was just launched. The situation does improve over time though as the network gets tweaked. A year ago, pre-iPhone, I was having occasional dropped call issues because of this, but haven't had a single one now.