If you follow the path off the beach from Haystack Rock, the first few shops you'll encounter are the ones on the north side: the book company, the grocery store, the quilt shop...and the Cannon Beach Bakery.
The sign outside advertises sandwiches and fresh breads, and although it seemed like a sideline, we went in on our first trip to CB.
Not only is it a first-class bakery, with specialty breads and confections to replenish even the most beach-weary travelers, it also shares a building with an art gallery -- so there's plenty to do while you wait for your sandwiches. They're of an average price (as opposed to the cost of the breads, which is competitively low), probably around $5 - $6, which isn't bad for beach food.
The variety is what makes this place so irresistable. Albacore white tuna and capers on a baguette. Brie and grilled garlic on marbled rolls. Not much meat, and a whole lot of flavor. Truly an amazing menu. They will bag your sandwiches up and let you take them back on the beach with you, or you can sit indoors or out to soak up the sun while you dine.
My one complaint is that, at times, customers have to wait an inordinate amount of time for service. It's happened to me on two successive trips, and although I can understand a bad day, twice starts to indicate a trend or a lack of customer focused employees. This isn't enough to keep me away, mind you, but it's enough for me to hesitate just a moment before recommending this at one hundred percent.
Overall, it's an amazing part of the Cannon Beach experience, and if you can get service, I can't see you being any less than satisfied.