I use
myHours. It doesn't allow you to invoice direct but you can export to Excel and I then use it as support for my invoice.
The great thing I like is it is free and it is online (means that you don't have to worry about backing up all the time) a nd also means that you can use it from your own PC, laptop if out of the office or anyone else's PC so long as you have access to the internet.
By selecting all of your clinets in a report, you can see how much of your time is spent on each client and how much income you gain from them.
Dawn