I work at home - got into it just because I was made redundant from my job working in publishing so decided to try freelance until I found a proper job, and have been freelance for over 2 years now.
It depends what you want to do, but for me I got most of my clients via existing contacts. People I worked with knew I was going freelance and knew I was reliable, so hired me and/or recommended me to people they knew.
Financially it's not amazing, I work hard but you obviously don't get any sick pay or holiday pay, so any day not working is a day not earning. The flip side to that is, if you decide you want to take a day off, you just do it. If you decide you want a day off in the week and want to work Saturday to make up for it, you can. I'd say the quality of my life has improved now I'm not constantly running for trains, working through lunch, staying late and never seeing DH.
I do get cabin fever though, I have to say! Some days I'm too busy to leave the house and too tired to do anything in the evening, so I end up staying at home days in a row and it can drive you bonkers. Ideally you should set up a very definite work space and only use it for work, and only use the rest of the house for relaxing. I used to work in our bedroom, and I couldn't sleep at night. I tried working in the lounge, but I hated being in there all day then all evening when DH came home and wanted to watch a film or something. So we converted the guest bedroom into a little study for me, and just have to shift things around when family come to stay.
There is always a constant worry in the back of my mind, am I going to get any more work once this current project is finished? You never really know how things are going to pan out and it can be a little bit nerve-wracking.
But now I'm pregnant, I'm hoping that I've built up enough of a client base to be able to work hours that suit me and my child. I think this is one of the biggest benefits. If I want to do 2 days a week then I will. If we realise we need a bit more money, I can increase my hours and earn more. I used to hate all the long hours in the office knowing I was not going to get any extra money for it!