On the projects side I always thought full time was better option. Companies give you a sense of belonging to a group of people and projects tend to be bigger, more complex and generally you can find something exciting in all that complexity (that is, if you are in a good company). On the other hand, freelancing, at least in my experience always involved smaller companies with small projects. And clients usually think less big: they have the potential to create innovative features but they really have to measure their budget and think 10 times before doing something. In a big company someone trying out something new is much less risky because he represents only one tiny part of the whole budget.
Salary wise, I earned much doing both freelance and full time jobs. The difference is that I also earned quite less doing freelance works. This seems to be directly correlated with the country of the client I'm freelancing for. When working for international clients I had even better pay as freelancer than in full time jobs, whereas with local clients versus local companies, I always felt much more appreciated and rewarded by companies. This might be a problem with Argentinean idiosincracy and constant crisises, though. Not sure how it is with other countries. Another downside of freelancing is the extra effort to get and manage the clients, which is usually not paid for. Usually they pay developing the product and not the meetings previous to starting.
What freelance work really stands up for is two things: freedom and respect. Freedom is almost self explanatory: you get to choose when, where you work, which client and projects, etc. But respect is the most interesting part. There seems to be this phenomenom in companies that the longer you stay the more they take you for granted. In the last company I've seen amazing people who give a LOT of themselves doing amazing work taken for granted, not given promotions, etc, while giving all sorts of niceties to new recruits who have just joined. Also there is the fact that you have an implicit "yes" to everything someone thinks that you should be doing, unless you have a really good explanation why not. On the other hand, when you are freelancing you are always invited to the next project, and you can always say no.
So I've been in this dichotomy for some years already. In the process of figuring out what is best, I came across Toptal which is a network for freelancers and I'm quite excited. I just sent an application and as part of the recruitment process they invited me to write an article about why toptal, which I accepted and the result is this post.
It seems that Toptal is a good mixture of both worlds. It appears that they work with interesting companies and projects, I'll be having good teammates, and good pay, all the good things of full time jobs plus remaining the independence of freelancing, being able to say yes or no to a project, choosing how much time I want to work, etc. Another key aspect is that there is a strong sense of community, with events and meetups all over the world. Community is key in everything and one of the most missed things when you are freelancing.
All this seems like a good balance, I'll tell more when I find out!