I am not a veteran, so I ask this question very gently and respectfully...
Some veterans enlisted. Some veterans were drafted. Some in peacetime, some in war time. Some saw combat, some only US soil.
Do any of those (or other issues) affect how and when you either:
Thank veterans for their service,
or, as a veteran, respond to people saying thank you?
Again, I mean this with only respect and curiousity.
If you respect the simple fact that all of those people raised their right hand to serve, it doesn't really matter about their motivations or how they got there. Don't look at it necessarily as what they've done but what they could've done if the right circumstances where in place. If you don't know them personally and not really sure if they served honorably, then only you can make that decision to thank them. Don't feel obligated to do it though.
To me, there are essentially 3 types of "thank you for your service." You have those who have no clue what military service is or what happens in places like Afghanistan or Iraq. They say it in an automatic response, almost like it's expected of them. The phrase coming from them doesn't have much weight or emotion involved but that's fine, I don't care. They're just trying to be polite. It doesn't offend me and I'd say it doesn't offend most other vets either.
Then you have those who are very patriotic and feel the need to thank vets because they honestly believe those serving in Afghanistan or Iraq are protecting their freedoms back home. I've had some get quite shaken up about it when they thank me. I'd say they're exaggerating reality slightly but it's their opinion based on their observations of history or current world events. Like I said, they're patriotic and believe we live in a free world because of the sacrifices of the military. Once again, I don't get offended and I'd say most vets don't either.
Finally, you have those who understand service and war. They're either former vets or just people who have been exposed to the military. They're familiar with the sacrifices just by serving in peacetime and also understand the harsh realities of war. They don't look at war as black and white, and don't care about the politics involved. They don't care if vets are in direct defense of our borders here or if they're putting their lives on the line for the guy next to them in some third world country 10,000 miles away. It's about respect for those who wear the uniform and have to make hard decisions in a sometimes confusing world. Their thanks doesn't offend me in the least bit.
To me the Marine in the article is overreacting about a simple phrase. Maybe he wasn't proud to serve or maybe he feels guilty about his actions. Either way, it's just a phrase. Sometimes thanks has sincerity, sometimes it doesn't. Just accept it and be glad we weren't treated like a lot of the Vietnam guys returning.