Combat can be approached in two major ways: going in guns a blazing or staying stealthy and undetected. While going in with the guns is a perfect answer to some encounters, other encounters are best done through stealth or distraction with bottles and bricks.
Listen Mode
One of the most useful abilities that Joel possesses is listen mode. By holding down R2, Joel will crouch and listen to the noise of the enemies around him and identify their position, even if he can not see them. This will let you see around corners and find out if the enemies are coming your way or facing away and can be taken by surprise.

Melee Combat
When guns are too loud or you find yourself in a desperate situation, melee can be a good way to get yourself out of a pinch. By pressing Square, Joel can engage in melee combat with his fist or melee weapons that he has found on the ground.Melee weapons have a limited use, set by the durability of the object, but they can be upgraded with a Blade and Binding. Modified melee weapons are a one-hit kill and increase the durability of the weapon. Additionally, once the modification breaks, the weapon can be upgraded again.
Using Explosives
When faced with large groups of enemies, bombs come in handy for taking out multiple targets with limited resources. There are three types of bomb: Nail Bombs, Molotov Cocktails, and Smoke Bombs. These can be thrown by holding L1 to arc the bomb and R1 to toss it once you are ready.

Note that causing a distraction with a bottle or brick to draw a large group of enemies close together will help maximize the damage.
Molotov Cocktails
Once Joel finds the first Molotov Cocktail on the body of the Firefly in the Outskirts, Joel can craft them with a rag and alcohol. Molotovs can be tossed to create a wide fire explosion that sets anything within range on fire.
These are highly effective against infected and can even destroy a Bloater.
Nail Bombs
Inside the church basement of Bill's Town Bill will teach Joel how to create Nail Bombs by combining a blade and explosive. Nail Bombs are essentially proximity mines and can be thrown like a grenade or placed as a trap to explode when an enemy gets within range. If hit directly, enemies will become stunned by the spikey bomb and then explode afterwards.
Smoke Bombs
Once discovered in Pittsburgh, Joel can craft a Smoke Bomb with sugar and explosive. By tossing a Smoke Bomb, Joel can stun enemies and escape their clutches. Be careful, as Smoke Bombs can also stun Joel.
Note that enemies stunned with Smoke Bombs can be shived from the front.
Stealth Combat
Stealth encounters are the key to keeping your guns ready with ammo when needed and Joel healthy. By using stealth kills, Joel will save ammo and stay undetected from the many enemies that may be within range of a gunshot.
Grabs and Executions
When approaching an enemy from behind, Joel will be promoted with a grab option by hitting Triangle. Once grabbed, Joel can either hold the enemy hostage, strangle them, or shiv them (depending on if they are human or infected).

