I actually like the definition of mentoring as found in Wikipedia:
“Mentorship is a personal developmental relationship in which a more experienced or more knowledgeable person helps to guide a less experienced or less knowledgeable person. However, true mentoring is more than just answering occasional questions or providing ad hoc help. It is about an ongoing relationship of learning, dialogue, and challenge.”
A mentor with a large amount of experience et cetera, who is capable of working in a non-directive manner will be far more effective than one that is more often Directive.
Coaching is the series of conversations that help a person perform closer to their potential, understand their role or task, help them learn what they need to learn in order to complete the role or task successfully, develop them for the next role and, on a good day, help them achieve fulfillment a work and, maybe, a little joy.
Many of the core skills involved in coaching and in mentoring are very similar, if not actually the same. These are principally the skills of listening and of asking questions. (Listening is a wonderful topic and will be the subject of a number of Blogs).
Another way to view coaching is to consider it as a process of helping a person get themselves to a position where they can maximize their potential. It is one of the roles of the coach to help reduce the interference that a person may have that is limiting them to a less than potential performance.
A coach works about 80% of their time in a non-directive manner, asking questions, seeking understanding and always working to the agenda of the coachee, not the coach.
Checkout my blog on Coaching for more information on that topic in detail.