The fastest way to setup a membership site is to use wordpress and wp-Member, an instant membership site creator.
Membership Access Levels
Using wp-Member you can create unlimited access levels. An access level is like a pass that allows a user holding that pass to gain entry to areas included with that access level. For example, you could have 10 pages with 2 access levels. You could allow the 1st access level to view pages 1-5, while the 2nd access level can view all 10 pages. This lets you create a stepped membership so that higher priced access levels give the user access to more pages, posts & categories.
For each access level you can create unlimited subscriptions. Usually the average site would offer a monthly and yearly subscription, giving a discount to users who sign up for a yearly subscription. You can set subscriptions to automatically recur, this signs the user up to a subscription payment in paypal which will automatically send the payment to your account every month, year or whatever length subscription you choose. You can create subscriptions ranging from 1 day to 99 years and everything in between. Turning off the subscription option turns wp-Member into a single payment per access membership site. If you set a subscription as 1 month, then the user would not automatically be billed at the end of the month. Instead, they would be emailed and told that their payment had expired and their account had been downgraded to a free account (if available).
You may run a site that gives extra access to users who donate. You could turn of recurring payments and create one subscription for each donation level you want to accept with a length of 99 years. When a user made a donation, they would be given access to the areas included in the access level that was linked with the subscriptions you made.
wp-Member is probably the best instant membership site creator because it is designed with usability and versatility in mind, making it easy to use and mould to your unique membership site needs.