Question: My coworker is ruining what's otherwise a great job. I love all my other coworkers and the benefits are great, but this guy is incredibly offensive and rude. Here's some highlights:

* He'll make comments about my body, like saying that he likes that my shirt is low-cut or that I have "nice forearms".
* He tries to start political arguments. Today I was talking to something else in the hallway about dogs and he walked up and said "That reminds me of how I called into a radio show yesterday to argue with this dumb republican. You're not one, are you?"
* He criticizes every thing I do or own if it's not something he's into or owns: "Why do you go to the gym? You know it's bad for you." "What are your plans this weekend? Why do you like going out for a drink? You seem like an alcoholic."
* He chews while talking and spits food on me all the time. Today it was when I had my headphones on and didn't know he was talking to me.
* He comes into meetings I'm having with someone else about work projects to tell me that he watched some TV show yesterday and it was good.

I've tried telling him that I don't like each of these individual things, but there's always something else he does. If this was outside of work I'd say something like "shut the fuck up" but obviously that's unprofessional here. What are some ways I can deal with this?

Answer: 
Every time he starts talking to you in a way that is offensive, shut him down.

If he makes a comment about your body or clothes: "Please don't comment on my body."

If he starts talking politics: "I would rather not hear political talk at work, so please stop."

If he starts putting down people based on race: "Please don't make racist comments around me."

Don't argue or try to explain your reasoning. If he says the comment isn't racist or tries to explain why what he said or did wasn't offensive, just walk away.

Annoying comments about TV shows and possessions can be ignored, but when he comments on your body or makes racist comments, that's veering into protected territory. If he doesn't stop those, you have a responsibility to go to your manager or HR. (And yes, even if you're a guy, it can still be considered sexual harassment for him to comment on your body.)

**Edit:** Considering the comments about the person possibly being on the spectrum of autism - Someone with autism is perfectly capable of playing by the same behavioral rules as everyone else, they just need those rules more explicitly defined. So when shutting down inappropriate conversations, you don't need to unkind, but you can still shut them down. 

Some conversations are just ones that annoy you, and there you are better off making it about you, not them: "Hey, I'm working with Jose right now, so please can you take your TV conversation elsewhere so I can concentrate?." "Please, can you eat elsewhere - it bothers me when you eat that closely to me."
Like all the above answers have said, yes, you should strictly tell him to stop making personal comments about you, you don't like him interrupting in meetings and when he makes racist comments.

Any sane person will understand and will respect your preferences and opinion. If the behaviour still continues it is a red flag. It's high time you ask your boss to intervene.