DS4 or XB ONE CONTROLLER FOR PC?

So, i have a PS4 with just one controller. I needed a controller for PC, because in many games like the witcher 3, fifa, cod which i play on ps4, i got so accustomed with the controller that while playing on pc i find it a little off.
Anyways, so i am looking for a new controller, so should i go with DS4 which i can use on my pc as well as on PS4 or the new xbox one s controller?
I have tried a few games on pc with the DS4 and it works quite well, but still dont know whether all games can be played smoothly on it.
I have heard all windows games are better optimized for the XBONE controller...
The games i mainly play on pc are battlefield 1, star wars battlefront, witcher 3, fifa 17, hitman, shadow of mordor
So, what do you guys suggest and why?
 
Solution
Well non steam games may be an issue with the DS4 controller, steam is what is providing the driver that allows the DS4 controller to work, it basically just emulates the steam controller, I have heard it works pretty good. Before that you needed third party drivers like joy to key to use a DS4 controller on PC and I have heard it can be a bit spotty. So for assured compatibility in every game that has controller support the xbox controller is your best bet, also many pc games will only show xbox button prompts but will still work with a DS4 controller. However if you only play steam games a DS4 controller should work just as well.
Well non steam games may be an issue with the DS4 controller, steam is what is providing the driver that allows the DS4 controller to work, it basically just emulates the steam controller, I have heard it works pretty good. Before that you needed third party drivers like joy to key to use a DS4 controller on PC and I have heard it can be a bit spotty. So for assured compatibility in every game that has controller support the xbox controller is your best bet, also many pc games will only show xbox button prompts but will still work with a DS4 controller. However if you only play steam games a DS4 controller should work just as well.
 
Solution
Like "Dunlop0078" said. plus -

Basically Windows has no integration whatsoever with DS4 controller (I mean it has no official driver nor official button mapping layout) you will still be able to plug the DS4 in and yeah it will still work but don't expect any specific button mapping in game with DS4 layout, also to work properly you will need a software to aid you in that like DS4Windows so you can configure the DS4 pad to work well.. also not every feature or functionality will be available for DS4 controller, only if the game supports those features. You can also buy a Bluetooth Receiver for DS4 to work on PC instead of USB cable I heard it's pretty good..

As for XBO 360 or One pad it has full integration with Windows, you just need to plug in, install the drivers and play, nothing else, launch the game and turn the Xbox Pad on, most games will automatically recognize the input and change all the button mapping and layout automatically as if they were on a Console...

Hope that helps
 
As far as I know both are pretty much the same, the difference is that DS4Windows is solely focused on DS4 controllers and it's easy to use most of time and works with pretty much any game out there, most people use it as for inputmapper.. there are the ads as you mentioned and also supports multiple pads besides DS4 controller, and sometimes it forces some games that doesn't recognize DS4 pads to work. It's up to you to check it out which one is better, I would personally go with DS4Windows, but do some testing and suit yourself.