Also this guide looks good for some general advice:
https://www.reddit.com/r/trackers/comments/wevh2/good_beginn...
If you're building an automated system to transcode video ffmpeg/x264 is great (or better yet, use an online transcoding service). For an average user go with Handbrake.