I'm from Marblehead so if you're ever there definitely go to The Barnacle for seafood. The Landing is good too, but its hit or miss in my oppinion. Cafe Italia is surprisingly good and atmosphere in the summer is great!
In Salem :
Red's sandwich shop is the ultimate breakfast and lunch place, and their menu is enormous almost like the oldschool diners where you could get ANYTHING you wanted.
Upper Crust has amazing pizza.
There is a new mexican restaurant across from Engine House pizza (also really good) and the mexican place was cheap and amazing food with a nice authentic atmosphere!!
Best Mexican food in salem has to be Cilantro though.
Salem Beer works is a good hangout spot with pretty good food.