For a long time I used Microsoft Money to manage my accounts, but that was eventually retired and stopped working. I had to find other options so I picked the easiest option - nothing.

A couple of years ago I started looking into setting up an actual system. I had a few requirements:

In the end I settled on using ledger. It runs locally, stores everything using plain text, and doesn't require any remote service to work. And as a bonus there is ledger-mode which adds ledger integration to Emacs.

My system at the moment is pretty basic: I split each of my accounts into separate directories, and then use one file for each year. I also have a primary file that links to all of these files; this allows me to run reports across all of my money.

There are some pretty big things I want to improve on in my setup: importing entries takes time, I'd like to learn how to run better reports, and I want to set up a YNAB-style budget system.

By far the biggest pain-point right now is importing entries. Currently I have to manually download CSV files from my bank, convert them with a script, and then go through each item to remove duplicates and categorize the data. Ideally I'd like to be able to automate the entire process, but I'll be happy if I can simplify the conversion and importing process.

Resources to learn more:
Provides a complete overview of the different applications available, along with instructions on getting started.
A community for discussing the ins-and-outs of plain text accounting.