I make no claims to how effective my method is, but it is what I do.
I only memo these visually, as I have yet to really actually attempt multi (other than some occasional attempts for fun).
For corners I call a corner a "1" corner if I need to rotate it clockwise, and a "2" if I need to rotate it counterclockwise. The number represents how many clockwise twists will return it to solved. I only use these for memorizing groups of 3 corners that twist the same direction. I will tap all 3 corners and then say "1" or "2" for which direction they need to twist.
For a pair of corners that twist in opposite directions I imagine the setup move that will bring them into the same column, then I call that pair an "S" if they appear to twist from inward to outward (UFR rotates counter-clockwise and UBR rotates clockwise would be an "S" pair). I call the pair an "O" pair if they rotate from outwards inwards (UFR rotates clockwise and UBR rotates counter-clockwise would be an "O" pair). The "S" stands for "Same" and the "O" for "Opposite". Look at the U face stickers for each of the examples I listed to see why.
For edges, I just remember the setup moves that bring the edges either adjacent to eachother on the same face, or opposite on the same face. For 4 edges twisted I remember the setup moves that bring them into the shape solved by (M' U)*4 or all onto the same face.
It's probably not the most efficient method out there, but it works well for me on single solves. For multi, I have to be honest that I am still working on that, but there have been a lot of good ideas discussed in this thread recently about this. I'm just trying to find what works best for me.