I can also highly recommend KiCad.
I've used numerous PCB packages over the last 30 years, and I even bought 3 different packages (starting in the DOS age).
In those times I've had some horrible expericences.
The worst was EdWin. If you deleted a trace in the schematic, sometimes it was not deleted from the internal netlist, which caused errors on the PCB. That was EUR 150 down the drain.
In another one, if you dared move a component in the schematic then the the auto wire function would randomly redraw a 100 or so wires over each other, and you spend 15 minutes in pulling those wire straight. That was some cracked version that I did not pay for luckily.
Of the 10+ packages I've used KiCad is the best i've used yet.
It might not be very polished, and it has it's small annoyances, but it gets improved significantly on an almost yearly basis.
In 2018 version 5 came out, which was yet again a significant milestone and it smoothed a bunch of rough corners on KiCad, but I do not design many PCB's and I have not used all the new improved features yet though.
Library management has been one of the weak points of KiCad, and has been changed and improved significantly in KiCad 5.
I got my fist (very trivial) PCB designed in KiCad in about a single afternoon with the help of the excellent "getting started" manual.
But that was in Kicad 4.0 and in 5 so many things have improved that getting started in 5 with the manual from 4 might be a bit annoying for beginners.
KiCad is also slowly gainint Spice Simulation capabilities, but it might well be a few years before that works good and is not yet available in the stable version.
Because KiCad is open source and multi platform you also have the freedom do to whatever you like with it. KiCad's file formats are all readable ASCII and documented. No artificial limitations on pins or layers. no yearly subscribtion or update fees. No forced misty cloud stuff.
There are also side projects around KiCad because of it's open source ness. For example there is StepUp, to export / import a 3D representation of your PCB to/from FreeCad (which is also slowly getting better, and can generate STEP files which are the industry standard I believe).
Another side project is a script to very quickly make schematics components from a spreadsheet.
Some 100+ pin components can be made by copying data from a datasheet in PDF format into a spreadsheet, adding some metadata, and then running the script to create the component.
Yet another side project is skidl. Which is a project do make PCB's from a script. If you design PCB's with highly repetitive parts this can be worth investigating. It has for example been used to desing a PCB for a clock where 60 led's are layed out in a circle.
Another side effect of the open source ness of KiCad is that it is used for a lot of open source projects. You can find a lot of them on for example github, comlete with not only the gerbers to reproduce a project, but also with schematics and the whole PCB, so you can use such a project as a start and modify it to create your own custom version. You want a better opamp with adiffernt layout? Another ADC with higher resolution but a different package? Want to change a TQFP to a SOIC version of the same component? Hard to do if you only have the gerbers, but almost trivial if you have the whole KiCad project.
KiCad is also being sponsored by Digi-Key. Dunno if they invest money in the project, but they make tutorials and libraries with components:
www.kicad-pcb.comIn the "made with KiCad" section on KiCad's website:
http://kicad-pcb.org/made-with-kicad/ you can find a bunch of example open source projects of PCB's made with KiCad.
The Olimexino A64 is on top of the list. It's a 64 bit Linux computer with comparable complexity to the better known "raspberry pie", and it's a pretty complex board. You want to Experiment with what KiCad can do? Get some of those projects from github or their web sites and open / edit them in KiCad. (But I have to say, if you're a beginner it's probably better to start with a much simpler design).
Interchangability between different CAD packages for schematics / PCB's is pretty abysmall. But not KiCad's fault. KiCad has well documented and simple file formats, and libraries and scripts to work with those files. The biggest obstacle to overcome are closed proprietary file formats of most commercial vendors. They are afraid to loose their customers, and it would indeed be pretty hard for a company to switch if they have a 100 or so different PCB's designed for their own products which they have to maintain for future updates / mods.
From what I know KiCad has become pretty good at importing Eagle Files. This will probably result in Autodesk changing the Eagle file format significantly in the next version of Eagle. From what I know of Autodesk I would not be surprised they would add encryption to the next Eagle format as a "feature" to "maintain integrity" of a design.