I use Audacity to record from a USB audio interface (microphones and direct line in) and I would imagine it would record from any other source as well.
It's free.
Although I'm not sure if it will do multiple sources at once.
No it seems like it can only do, for example, my voice via my mic but not the incoming on the same headphones as the mic is. I need something to record all the input/output from my headphones + mic. Thanks though.