One of the most common problems that I've had with unlocking achievements is that Steam doesn't deal well with standby and hibernation; specifically, Steam loses its connection to the achievement servers, and won't try to reconnect.
I primarily play on Mac, but I believe I've seen this issue when booted into Windows as well.
A game of Civilization lasts long enough, and is easy enough to walk away from without saving, that I often put my computer into standby dozens of times during a game, and so I think there's a decent chance you might be doing the same, and experiencing this problem.
You can check whether Steam is bugging out by opening a Steam window and looking at the bottom: if it's not connected (and you don't have any games or updates downloading), it will say "no connection". If you do have updates downloading (or paused), I'm not aware of any way to see that the connection has dropped, you'll still be able to browse the store in Steam, and you'll still be able to download updates, it's just the achievements that stop working.
If you've finished a game but didn't get the achievements that winning it should have gotten you, you should be able to get the achievements by exiting Civilization, rebooting Steam, re-launching it and then re-playing the last 10 turns or so of the game, from the most recent autosave.
Autosaves can be accessed by selecting the "autosave" check-box on the game load screen; on the Mac version it's still necessary to manually select "sort by last modified" to get your most recent auto-save to come to the top, on the Windows version, that bug, where "last modified" is selected by default but the saves are not sorted, was fixed ages ago.
Somewhat more problematic are other achievements, such as chopping 1,000 forests...to make progress, Steam must be connected at the moment you chop down a forest, so it may be necessary to restart Steam and Civ 5 each time you close the lid on your computer if you want to make progress toward that achievement.