There are 101 different methods of lead generation and what works for you and your business depends on the products and services you offer, your target market and sometimes personal preferences. (There's little point in cold-calling if you absolutely hate it - and let's face it most people don't like doing it and even more importantly, don't like being on the receiving end.)
Essentially, people do business with people (or businesses) they know, like and trust and that can take time to build.
They can get to know, like and trust you from meeting you face-to-face at networking meetings, seeing your expertise through articles, demonstrations, blogs, referrals and recommendations, a regular newsletter ... etc.
Leaflets, advertising, email and direct mail campaigns, free offers, events, workshops can also work. Pick half a dozen and try them out - test which ones work best and stick with those. If something doesn't work, adapt, modify or change it to see if you can improve your response rate or find something that works.
For a web designer or internet marketer - I would choose someone I know or who was recommended to me. I certainly wouldn't pick someone from the many emails I receive, on an almost daily basis, offering their services.
I've gained most of my business from networking - both online and offline. Social media has widened the opportunities and the audience but can be a slower, more long-term method.
I can recommend the Ultimate Small Business Marketing Book - by Dee Blick which has great tips for small businesses and more importantly practical examples.
Above contibution by Clare Evans