you have four different routes to entry for the London marathon. Either continue entering the ballot year after year. Chances are one year you'll be successful, although there's no predicting how long this will take.
Or you could apply for a charity place. These are numerous, you won't have much difficulty getting a place but you will need to commit to raising somewhere in the region of £2000 for said charity in return for your place.
You could join a running club, and chance your arm at getting one of the places that are allocated to the club one year. every year the marathon race organisers give places to the many running clubs across the UK (it's of the order of two or three places per club, perhaps related to club size, i can't recall). Each club can choose who to allocate these places to. Some clubs might award them to the fastest runners in their club, some might have a race off for it, some might give them to the people who've helped out most in the last year, or they might have their own internal ballot or they might have nominations within the club. Basically, it's down to chance again.
Finally you could train for a "good for age" place. As i understand it, these are almost guaranteed places in the race, but open only to those who can prove that they have run a specific time (or faster) in another marathon during an eligible period prior to the london marathon you're applying to. Full details are on the london marathon website.
I'm deliberately ignoring the options of getting an elite place, a championship place, or a "celebrity invitation" as I guess if you qualified for any of these you wouldn't be entering the ballot each year.
Of the options available to you, two are within your control ("short term" charity or "longer term" GFA) and the other two are down to chance.
If you really have your heart set on completing the london marathon, then i'd go with one of the options that is within your control.