What I miss the most is Shift-movement to select text. That's a very convenient thing in Windows, and I now realize I use it all the time.
Below is my collection of Emacs survival-knowledge so far.
Did I miss anything?
1.1 Moving around Emacs
C-x C-c Exit Emacs
C-g Stop current command sequence
C-x C-s Save buffer
C-x b Jump to different Buffer
C-x C-b Buffer menu
C-x ESC ESC Display most recent Lisp code
C-x 1 Only display one window
C-x 2 Display two windows
1.1.1 Repeat command
C-u n COMMAND
1.2 Moving around your document
C-SPC Put Mark at Point/Cursor
C-x C-x Exchange Point and Mark
C-u C-SPC Go back to previous locations (like undo but non-destructive)
C-s Incremental Search
C-r Reverse Incremental Search
C-s C-w Search with the current word highlighted
C-M-s Regexp Incremental Search
C-M-r Regexp Incremental Search
C-x r m <somekey> Mark bookmark
C-x r b <somekey> Visit bookmark
C-x r l List bookmarks
C-x 2 Split window into two
C-x 1 Only one window
C-x 5 2 Create new Emacs window
1.3.1 Don't wrap lines
1.3.2 Display only functions
Almost. Display only lines with a maximum indentation
C-u 2 C-x $ Hide lines with text in column 1 or 2
C-x $ Show all lines again
C-x C-q Make read-only file writable
M-c Capitalize the following word, moving over.
M-l Convert following word to lower case, moving over.
M-u Convert following word to upper case, moving over.
M-h Put point at beginning of this paragraph, mark at end.
1.4.1 Copy & Paste
C-k Kill to right of line, or blank line
C-SPC Set Mark
C-w Kill Region (between Mark and Point) (Cut)
M-w Copy Region (Copy)
C-y Yank copied text (Paste)
M-y Yank older text (repeatedly)
C-x u Undo one step. C-f to "turn around" and redo instead
C-_ Undo, same as above
C-u C-_ Undo only in region
M-/ Command Completion with words from open buffers
C-M \ Indent several lines to same column (indent-region). (ESC C-M \)
1.4.6 Narrow to Region
This will dive into the current region and hide the rest of the document
C-x n n Narrow region
C-x n w Widen region
1.5.1 Find Other Source file
Jump to corresponding header/cpp file, or the one on the point
1.5.2 C++ etags
First, create a TAGS file, from the shell
find . -iregex '.*\.\(c\|h\|cpp\|cc\)' -print | etags -d -t --members -
Then tell Emacs you want to use it
M-. Find a definition for a tag. The default tag is identifier under the cursor. Name completion type partial name and then TAB.
M-, Find the next definition for the tag.
M-* Pop tag stack (go back one level)
1.6 Useful tricks
The speedbar is a file/tags list
1.6.2 Shell Functions
M-! Single shell command
1.6.3 Macro recording
C-x ( Start recording
C-x ) Stop recording
X-x e Execute macro
Apply to the entire Region
Name the last recorded macro