One of the big surprises to me since opening up my office is that a lot of people aren't quite sure what an Internal Medicine doctor does. Internal Medicine doctors, or Internists, are primary care physicians. After our internship we do an additional 2 years of training specifically around caring for adults (this totals 11 years of higher education). This training is usually hospital based, so things like intensive care medicine, cardiac medicine (treating heart attacks), or GI medicine. We also have training in typical office stuff like treating sore throats or blood pressure, diabetes, and women's health.
In many ways, Internists are similar to Family Practice doctors. Family Practice doctors have extra training in taking care of children and delivering babies. Typically, their training is more broad (covering a lot of areas) and internal medicine training is more in depth (covering less topics but more in depth on the things they do cover). In the end, though, especially for primary care, it all comes down to having a good relationship with a doctor that you trust and who listens to you and helps you acheive your goals for your health.
There are other practitioners out there doing primary care. Nurse Practitioners and Family Nurse Practitioners have a nursing background and are able to see patients and prescribe medications with supervision from a doctor. Physician Assistants are similar in what they can do, though their training is very different. They go to school for an extra 2 years after college. PAs and Nurse Practitioners are great at providing primary care, in fact, often you will be able to get more time and individual attention, which is very important. In general, they do not have the same depth of training as a physician.
After seeing and managing doctors for 15+ years I have concluded that the most important aspect of your relationship with your doctor is having someone who you can talk to, and someone who genuinely cares. That should be the foundation for every treatment plan, and if you have that, you have a good primary care doctor.