The number 1, can't miss, all time favorite for me would have to be Pop's in Buxton. Coldest beer, best fish bites, best fish sandwich.
Next on the list would be Oceana's in Avon. They have a special each weekday. If I hit them on steamed shrimp day that's what I get. If it's fish tacos day that's what I get. If it's on any other day I'll get the blackened tuna griller.
In no particular order is Sam and Omies in Nags Head for breakfast. For a nice dinner I would go to Owen's in Nags Head, Ketch 55 in Avon, or Dinky's in Hatteras depending on which is closer, and for a quick lunch you can't beat Buxton Munch in Buxton - fish tacos are excellent.
Finally, if you are down in Ocracoke I would recommend Dajio's for fish, Jason's for pizza, and don't get off the island without seeing Eduardo at Eduardo's Taco Stand. You'll know what to order there.