If you have good skills, you can definitely try freelancing. You can simultaneously work for more than one company at a time. You can work anytime, anywhere. And how much you get paid depends on your task and how many days you work. You don't get paid for the days you don't work.
From a learning aspect, according to me, you will learn more as a freelancer because when you are working in a company, you have to complete the task given to you and this is chosen by your higher officials. If you are freelancing, you can get to decide what you want to work as and for. You can try working on different domains. But obviously you need the skills for it.