Подлый: loathsome, despicable, contemptible
Once upon a time, everyone living in what is now Russia had to pay a bunch of taxes, first to the grand prince and later to the state. These taxes were collectively called подать (tax, assessment; stress on the first syllable). Then Peter the Great assumed the throne and decided to give a tax break to the rich and noble. Over time, the only folks still burdened with подать were the lowest merchant class in towns and the peasants in the countryside. They were called податные сословия (the tax-paying classes) — you know, poor working stiffs who always seem to bear the largest tax burden.
Подлый was originally used to describe these folks and was a neutral word meaning lower-class or poor. But then, as so often happens in society, lower-class began to be associated with low-down behavior, and poor people began to be associated with poor manners and morals.
Подлый morphed into the meaning it has today: someone or something that is base, despicable or immoral. Подлец is a scoundrel, villain or snake. Подлость is baseness or wickedness.
While these are not curse words, they are certainly fighting words. Use them with caution and protective covering. For example, when the guy in the Hummer not only cuts you off but also gives you the finger, you might shout: Редкостный подлец! (what a piece of crap; literally "uncommon lout"). But make sure the windows are tightly closed.
Подлая шутка might be a mean joke, and подлый поступок is a low-down, dirty trick. Одна девушка подставила меня так, что уволили с работы. Такого подлого поступка я от неё не ожидал (A woman at work made me look so bad that I got fired. I didn't think she was capable of such a dirty trick). Убить невооружённого человека — величайшая подлость (Killing an unarmed man is the lowest act imaginable).
Another word for nastiness is мерзкий (disgusting), which is someone or something that makes your blood run cold or gives you the creeps. In fact, it's related to the word мороз (freezing cold). You might use this word when a driver cheerfully waves at you and then zips into the parking place you were waiting for. You could also use the related nouns мерзавец or мерзавка: (What a slimeball!)
Мерзость might be vile behavior, or it might be some food left in the back of your fridge that has turned into a multicolored science project. Какая мерзость! (How revolting!)
Гадкий (ugly, naughty, vile) is a bit lower down the scale of despicable behavior and varies in meaning and strength depending on the context. Гадкая погода is foul weather. Гадкий утёнок is the proverbial ugly duckling. Гадкий американец is the proverbial ugly American. Гадкий ребёнок is a naughty or misbehaving child. But гадкий человек is someone thoroughly untrustworthy or unsavory. Какой же он гадкий! (What a sleazebag!)
Similar to гадкий is гнусный, which is someone or something that is foul, rotten or mean. Гнусная ложь is what English speakers call a dirty, rotten lie. Гнусная работа is work that is miserable or disgusting — like cleaning the fridge of science projects. Someone with гнусный характер has a foul temper.
To sum it all up, the guy who institutes tax cuts for the rich is подлец. The guy who spins it is мерзавец. The whole process is гадкий. And the work of balancing the budget afterwards is гнусный.