Well, it all depends I have to say I've been through literally every recording software every setting... so I know a little about it. First off Action! for me is great. The optimal stable settings to run are AVI/Original/30fps/Use multicore rendering and turn off hardware acceleration video encoding. The best thing I like is how Action! can record the gameplay and commentary with good quality and you can balance which one is louder than the other in the settings but also can just let the commentary record in a separate audio file and Action! also has an amazing built in video compressor
You can manually change the bitrate of the file in the compressor settings to lower the size of the video that's optimal for your upload speed lowest you can go without losing quality is at least 6,000 Mbps. The one downside on Action! is that if you cant run the game your playing at a stable framerate if you try to record while the framerate is unstable or constantly dropping the recording will mess up it'll be either sped up or your voice will be messy so unless you can record at a stable 30fps or even 60fps if you're trying that don't use Action!
Second best I've used is Bandicam now one problem I had with bandicam was the Microphone volume over the recording was terribly low which is solved by making your mic the primary sound device and your windows sound the second. Now bandicam settings vary between computer systems this is mine.
Bandicam is very stable doesn't take up a lot of CPU, doesn't tank your framerate, and records at amazing quality with decent file size. The downside is that it doesn't have a built-in compressor like action does you would need to find your own. Everyone in life would recommend handbrake, but I recommend virtual dub this program does a godlike job compressing a video if you optimize it with the right settings. I record my videos 15 minutes each and the file size is around 2-3gb when I run it through virtual dub it comes out 300-500mb with very I mean very little quality loss. If you end up trying virtual dub, I can upload my processing settings for it.
Third best I've used is Fraps now Fraps records with amazing quality I mean amazing, but the downside to it is that it caps your own framerate in whatever you're playing. For example, if I have around 270fps while in a League Of Legends match when I turn on fraps it caps out my fps at 60 stable while if I try to record with Action! or Bandicam in the same situations my fps would hover around 90-110 fps. Now if I try fraps in another game like Batman Arkham Knight where my fps hover from 50-60 it would cap my fps at 30. It all depends on your system if you can't run the game your playing at a stable framerate Fraps will tank your FPS hard I mean hard. The most known downside to fraps is the gigantic file sizes it produces you'd definitely need a compressor, but it would take even more time to compress these seeing that a normal 20 min video could top off at more than 20gb when you finish recording with Fraps.
Dxtory o man dxtory honestly in my opinion Dxtory is the worst I've used a lot of people say it's an amazing program, but I don't know doesn't work well for me I've tried Lagless Lossless Codec I have like 3 Harddrives one an SSD so the writing the file to disc shouldn't be a problem it just tanks my fps horribly for no reason I wouldn't recommend it
Shadowplay is way too buggy interface doesn't work for me half the time always freezing
OBS is pretty good, but I don't like the fact that it has no FPS counter no way to know if you turned your recorder on etc otherwise an okay program
I know this is a bit long but if recording with any of these programs tanks your FPS to below playable you need to get a better computer the one you have isn't going to cut it for recording with software you can use an external recorder so you have no framerate lost at all but i have no knowledge about those