The short answer is that doctors study diseases and how to cure them while nurses and nurse practitioners study people and how to heal them.
The more detailed answer is that a physician is a person with formal education and training in medicine, i.e. the treatment of diseases using drugs, procedures and/or surgery.
A nurse practitioner is a registered nurse with formal education in the care of the sick plus advanced education and training in the diagnosis, treatment and management of common and chronic illnesses.
Physicians and NPs are similar in that both diagnose, treat and manage acute and chronic diseases, order and interpret labs and diagnostic tests and prescribe medications. Studies have found that NPs do about 80% to 90% of what physicians do. Studies have also found NP care to be at least equivalent and, in some cases, superior to physician care. Both professionals practice the healing arts but they do so from different perspectives.
Physicians and NPs are different in how they are educated and in their philosophical approach to care. Physicians are in school longer and their focus is on the study of disease. Many if not most NPs are already skilled and experienced RNs before going on for advanced education and training in advanced practice. NPs care for patients in all aspects of their lives. Many physicians choose specialities in which to practice because of their expert knowledge of disease states (and higher reimbursements). Physician and NP care and knowledge overlaps and is complementary, but each has a core expertise that is distinct and unique. NPs make ideal primary care providers because of their holistic and wellness orientation that emphasizes health education, risk identification and reduction, and preventive care through lifestyle modification.