Marmalade,
Breaking into Freelancing can be a tricky task depending upon where you physically are. I have been Freelancing for many years and it took some time to build up a customer base as I began that journey. I also had a full time job when I began to Freelance so I was not dependent upon the pay of the Freelance jobs starting out, that made a big difference in getting started. I was not under the gun to get money rolling in from the start.
Build a portfolio of personal sites to show perspective clients. These need to be live so they can be demonstrated but they do not need to be real businesses just functional sites.
My background is in University teaching and program management. So the first thing that I did was set aside some time every day to market myself as a freelance web designer. I would view local web sites and look for ways to improve those sites. Either in the eCommerce aspect or just plain web design and layout. Then I would develop a plan to approach the site owner and propose my changes. Some of the smaller sites I would recommend ways that they could improve their business and ROI and suggest that they allow me to implement the changes at no cost to them. This took some time to build up a client list but it did work. Do not get discouraged, it takes time and there will be a lot of rejection as you begin. But once you get going it can be very rewarding.
I focused on dynamic design and dynamic web content and at the time I was breaking into the field that was still a relatively new area of web design. I made myself an expert in database design and database normalization for the web. This took a little time but it was well worth it as the web over the last few years has moved into dynamic content in a big way and I was way ahead of the curve on those designs.
Stay away from prepackaged CMS systems. Most customers will want fast, unique and secure products. There is too much involved with trying to deploy in a proper way many of the out of the box CMS systems. Besides they are extremely hard to support and next to impossible to customize on the database side. It also makes the customer question your ability as a programmer if you are using an out of the box CMS. I have seen a few done successfully but those guys really understood the CMS product and that product had become their specialty. Keeping up with the changes to an out of the box CMS can become a full time job.
Look for an area that you can become an expert in. Find something that really interests you and study the topic. Reach out to local web design companies and offer your services to them. Most web design organizations are always looking for programmers that they can add to their remote staff. Have samples of your work for them to see and be ready to answer questions in your chosen specialty. Once you get your foot in the door, if you are motivated and do good work, your skill sets will accelerate at a much faster pace. Being around those types of people you will begin to share experiences and skills and you will be surprised at how quickly you will learn new aspects of the trade.
Attend University seminars. Most Universities conduct quarterly seminars on new technologies and how they impact business. These are setup for local businesses to get to know the technology and introduce graduating students to what is available locally. Attend them it is a good place to meet local business owners and see where the technology is moving in your field. A big part of these discussions over the last few years have focused around eCommerce and how it can grow your business. I have been a part of conducting many of these seminars and they are a great to add to your contact lists.
Keep notes when you talk to a business, obviously not while you are talking with the business owner, but immediately afterwards. Jot down the important key points you discussed. You would be amazed at how many leads I have gotten in casual conversations just by taking notes and following up. Plus they are always impressed that I remembered key points we discussed. Everybody wants to feel important so make them feel important.
Don't get discouraged. It take time to build anything worthwhile and freelance web design is no different. If I would have given up after a few months I would have never made it as a web designer and I would have never met some of the great people that I have met in this industry.
Web Design is not a get rich quick scheme. It does not work that way. You can make a very comfortable living doing it but if you are customer focused and really want to do a good job and build relationships you will probably never get rich. I was interested in being independent and not depending upon anyone else for my income. I achieved that and now can pretty much dictate my own schedule. But I still support my customers and at a moments notice if they need something I or one of my staff will be there to supply it. That is what makes us different from the big box organizations.
One other great point that Chancer mentioned while I was typing this ..... Under Promise and Over Deliver That will generate you many good leads from your customers.
There is so much more I could tell you but I think you get the idea. Stay focused, know your limitations and your skills and add value to your customers deployments and it will come.