35 HL2 Codes

First: Turn the console on in the options menu (press escape) (Options > Keyboard > Advanced).

Now, use the "~"key while playing to bring up the console and enter the following codes there:

god - God mode (server side only)
give <item or weapon name> - Gives a weapon or an item (see the list below)
buddha - Reduces your health
hurtme # - Hurts the player (# is damage amount)
impulse 101 - All weapons
impulse 82 - Spawns a jeep
notarget - Player becomes hidden to NPCs
noclip - Walk through walls (server side only)
maps - Displays map list
map <map name> - Load a specified map (see the list below)
developer # - Sets developer mode to on/off/verbose (0-off, 1-on, 2-verbose)
+mlook - Enables mouse look
hud_quickhelp/text? 1 - Shows crosshair
viewmodel_fov # - Sets the size of the weapon you're carrying (54 is default)
exec <filename> - Execute a script file
cl_drawhud 1 - Turns hud display on
cl_enablehud 1 - Turns hud display on
cl_showfps 1 - Shows frames per second in game

npc_create - Creates an NPC (works in worlds that have an NPC entity)
npc_create_aimed - Creates an NPC aiming away from the player.
picker - Toggles 'picker' mode.
setpos - Move player to specified origin (must have sv_cheats 1 enabled).
setang - Snap player eyes to specified pitch yaw (musthave sv_cheats).
sv_gravity # - Set gravity to #
sv_stopspeed # - Set minimum stopping speed when on ground to #
sv_friction # - Sets world friction to #
sv_bounce # - Sets bounce multiplier for physically simulated objects collision
sv_maxvelocity # - Sets the maximum velocity of any moving object to #
sv_waterdist # - Sets vertical view fixup when eyes are near water plane to #
air_density # - Changes the density of air to #
dsp_explosion_effect_duration # - Sets length of confusion/ear-ringing effect to #
prop_debug - Toggle bounding-boxes debug mode on/off (red - ignore damage, white - respond to damage, green - health)
sv_soundemitter_filecheck - Toggle reporting missing .wav files for sounds
mat_numtextureunits # - Limits the number of texture units to # (0 - let the game decide how many texture units to use)
mat_yuv 0

Similarly you can use the command line parameters so that these things are constantly active. There are many more Command-Line Parameters & Cheats that alter environmental elements and gameplay.