La gestion des drivers a super bien évolué depuis ces dernières années et avec les distribs qui intègrent les derniers noyaux (genre Ubuntu, Fedora, arch...) ça fait super longtemps que tout est fonctionnel sur mes premiers boots des PC que je répare. C'est très bénéfique pour des PC portables qui ont des trucs un peu exotiques (clavier multifonctions, carte graphique optimisée, cadence de processeur, etc).
Les cartes Nvidia restent le gros point noir : ils n'aident pas beaucoup les développeurs opensource, donc le driver propriétaire est souvent obligatoire sur les cartes récentes (et pour les perfs). Pour le support des distributions qui se mettent à jour rapidement (Fedora / Arch) et Optimus (Intel n'ayant pas intégré l'HDMI 2.0, le port est souvent relié au GPU dédié) ce n'est pas l'idéal. Ça s'est amélioré, mais avoir un laptop qui permet d'activer le GPU dédié dynamiquement au besoin, sans bugger sans arrêt (Bumblebee...) ni casser la mise en veille, ça reste difficile.
Avoir la même autonomie que sous Windows (consommation en idle) peut être difficile aussi, faute d'efforts des fabricants souvent.
Pour le wifi, c'est sûr que ça s'est bien amélioré, même si les fonctions avancées ne sont pas toujours supportées : MU-MIMO, AP/monitor (mais bon, de ce côté là sous Windows ce n'est pas mieux). La réduction du nombre de chipsets réellement utilisés aide aussi, hors routeur (les chips Broadcom des routeurs, ou les MediaTek, bon courage...).
Après pour le dev embarqué ou multiplateforme, il n'y a pas photo : WSL (le "bash" de Windows 10) est encore limité et est assez lent, et les Mac sont quand même hors de prix.