A campaign is a joint effort of an entire organization, or federation of organizations, to bring timely and effective pressure to bear on influential bodies or the general public to reach a concrete goal within a limited time-span at a national or international level.
A project is more limited in scope than a campaign with precise deadlines. A programme covers a number of related issues, with several goals and no specific time limit. Programmes are very likely to generate campaigns and projects.
The general rules/guidelines/questions for a campaign are: (1) What does the campaign aim to achieve? (2) What change is wanted (short and long term)? (3) Is a campaign really necessary? (4) Who is the target of the campaign? (5) Who needs to change, and how? (6) Who needs to be on your side? (7) What publicity is needed? (8) Have a planning committee that consists at least partly of the people concerned with the issue; (9) Delegate responsibilities; (10) Choose the most appropriate method (direct action/non-violent protest; political lobbying; public demonstrations/festivals/manifestations; education; media); (11) Make a timetable for the campaign and check it regularly.
Push something hard enough and it will fall over.