Have you heard of chess.com? They have a nice one too.
Free PGN viewer

Have you heard of chess.com? They have a nice one too.
Yes Mr Notmtwain but if you want to study someones games offline then it is usefull........
There is a good, free Windows PGN database app at;
https://www.microsoft.com/en-gb/store/p/pgn-explorer/9nblggh4nh19
It has chess engine analysis and you can view, add, edit and create games

Couple of free software that are useful for viewing pgn files and also offer much more -
http://scidvspc.sourceforge.net/
Scid vs PC Slightly complicated to use. But once you start working with it you will get used to it. It is poor man's Fritz Chess Base
https://www-lucaschess.rhcloud.com/
Much easier to use. You can play against wide range of computers - from novice to grandmaster levels. Can view and analyze your games. Does what scid vs pc does. Many many more features - like opening training, tactics trainer, play like grandmaster, etc
I use a Windows store app called PGN Chess Book which has a nice interface and good help pages.
It uses Stockfish 8 and has a blunder-check feature, but its Windows 10 only and runs only on desktop PC's.
I can't find a decent, free PGN app for Windows phone and/or tablet

http://www.wmlsoftware.com/chesspad.html
Best free PGN viewer software.
I love it! Using it for years now and it's just brilliant. I love how you can sort the games as you want (with F11 button option).

[Site "https://lichess.org/AXzhrBgr"]
[Date "2018.03.31"]
[Round "-"]
[White "Ononiwubenjamin"]
[Black "tharradonjr"]
[Result "1-0"]
[UTCDate "2018.03.31"]
[UTCTime "12:25:30"]
[WhiteElo "1571"]
[BlackElo "1684"]
[WhiteRatingDiff "+14"]
[BlackRatingDiff "-14"]
[Variant "Standard"]
[TimeControl "600+0"]
[ECO "B01"]
[Opening "Scandinavian Defense"]
[Termination "Normal"]
[Event "U1700 Rapid Arena"]
[Annotator "lichess.org"]
1. e4 { [%clk 0:10:00] } d5 { [%clk 0:10:00] } { B01 Scandinavian Defense } 2. e5 { [%clk 0:09:59] } Nc6 { [%clk 0:09:58] } 3. Nf3 { [%clk 0:09:57] } Bf5 { [%clk 0:09:57] } 4. Bb5 { [%clk 0:09:55] } e6 { [%clk 0:09:52] } 5. Nc3 { [%clk 0:09:53] } Bb4 { [%clk 0:09:47] } 6. a3 { [%clk 0:09:51] } Bxc3 { [%clk 0:09:44] } 7. bxc3 { [%clk 0:09:48] } Ne7 { [%clk 0:09:43] } 8. Bb2 { [%clk 0:09:46] } O-O { [%clk 0:09:40] } 9. O-O { [%clk 0:09:42] } a6 { [%clk 0:09:37] } 10. Ba4 { [%clk 0:09:40] } a5 { [%clk 0:09:32] } 11. Bb3 { [%clk 0:09:39] } Ng6 { [%clk 0:09:26] } 12. Re1 { [%clk 0:09:35] } Bg4 { [%clk 0:09:24] } 13. h3 { [%clk 0:09:31] } Bxf3 { [%clk 0:09:22] } 14. Qxf3 { [%clk 0:09:26] } Ncxe5 { [%clk 0:09:20] } 15. Qh5 { [%clk 0:09:16] } Nc4 { [%clk 0:09:08] } 16. Bc1 { [%clk 0:09:08] } Nf4 { [%clk 0:09:02] } 17. Qg4 { [%clk 0:08:57] } Qf6 { [%clk 0:08:53] } 18. d3 { [%clk 0:08:47] } Nxh3+ { [%clk 0:08:37] } 19. Qxh3 { [%clk 0:08:29] } Qxc3 { [%clk 0:08:32] } 20. Bf4 { [%clk 0:08:13] } Nd6 { [%clk 0:08:08] } 21. Qg3 { [%clk 0:08:11] } g6 { [%clk 0:08:04] } 22. Be5 { [%clk 0:08:02] } Qd2 { [%clk 0:07:40] } 23. Qh4 { [%clk 0:07:57] } h5 { [%clk 0:07:33] } 24. Bf4 { [%clk 0:07:48] } Qc3 { [%clk 0:07:30] } 25. Qg5 { [%clk 0:07:42] } Nf5 { [%clk 0:07:17] } 26. Be5 { [%clk 0:06:52] } Qc6 { [%clk 0:07:00] } 27. Qf6 { [%clk 0:06:39] } Kh7 { [%clk 0:06:45] } 28. Re3 { [%clk 0:05:38] } a4 { [%clk 0:06:42] } 29. Rf3 { [%clk 0:05:14] } Kh6 { [%clk 0:05:14] } 30. g4 { [%clk 0:01:54] } d4 { [%clk 0:04:55] } 31. Rxf5 { [%clk 0:00:59] } exf5 { [%clk 0:04:47] } 32. g5+ { [%clk 0:00:48] } Kh7 { [%clk 0:04:42] } 33. Qg7# { [%clk 0:00:47] } { White wins by checkmate. } 1-0
There are some excellent free ones on SourceForge. Particularly;
https://sourceforge.net/projects/pgn-chessbook/
and
https://sourceforge.net/projects/chessx/

[Event "Casual Blitz game"]
[Site "https://lichess.org/NFW0UZUo"]
[Date "2019.09.18"]
[Round "-"]
[White "Anonymous"]
[Black "Anonymous"]
[Result "0-1"]
[UTCDate "2019.09.18"]
[UTCTime "18:46:31"]
[WhiteElo "?"]
[BlackElo "?"]
[Variant "Standard"]
[TimeControl "300+3"]
[ECO "C21"]
[Opening "Center Game"]
[Termination "Normal"]
1. e4 { [%clk 0:05:00] } e5 { [%clk 0:05:00] } 2. d4 { [%clk 0:05:01] } Nf6 { [%clk 0:05:01] } 3. dxe5 { [%clk 0:05:03] } Nxe4 { [%clk 0:05:03] } 4. Qd5 { [%clk 0:05:03] } Qh4 { [%clk 0:04:51] } 5. Nc3 { [%clk 0:04:47] } Qxf2+ { [%clk 0:04:52] } 0-1

http://www.wmlsoftware.com/chesspad.html
Best free PGN viewer software.
I downloaded and installed this PGN viewer but in it the board looks awful:
Microsoft also has a free pgn viewer but download is pretty complicated - I wasn't able to download.
One can also use Chessbase Reader from Chessbase - but in it I am getting website certificate error repeatedly which is making it quite inconvenient to use.
This look into the other viewers suggested here.
Any other suggestions for good PGN viewers?

Couple of free software that are useful for viewing pgn files and also offer much more -
http://scidvspc.sourceforge.net/
Scid vs PC Slightly complicated to use. But once you start working with it you will get used to it. It is poor man's Fritz Chess Base
https://www-lucaschess.rhcloud.com/
Much easier to use. You can play against wide range of computers - from novice to grandmaster levels. Can view and analyze your games. Does what scid vs pc does. Many many more features - like opening training, tactics trainer, play like grandmaster, etc
The url for Lucas Chess is: https://lucaschess.pythonanywhere.com
But in it I could not find a view to see pgn file listing ie see the various pgn files and then i can click one and view it and then move to next. I don't want to open one each time using file explorer. Maybe this option is there but I could not find it.

There are some excellent free ones on SourceForge. Particularly;
https://sourceforge.net/projects/pgn-chessbook/
and
The first one (PGN ChessBook) works only on Windows 10 But seems to have good features mentioned - you can even download your games from chess.com into pgn files!
I tried ChessX - it can be useful but has limitations like:
1) the game is shown in a very small size (could not find option to view in bigger size)
2) ideally i would like to drop pgn files into a windows folder and the pgn viewer should be able to show me all these pgns in its listing. could not find way to do this in ChessX. In it you need to manually add each file to ChessX. And even after you add then in the listing window I would like to see file name but it shows that after full file path - so effectively file name gets hidden. See image below:

http://www.wmlsoftware.com/chesspad.html
Best free PGN viewer software.
Really appreciate the effort, thank you kindly for supporting community.

[Site "https://lichess.org/AXzhrBgr"]
[Date "2018.03.31"]
[Round "-"]
[White "Ononiwubenjamin"]
[Black "tharradonjr"]
[Result "1-0"]
[UTCDate "2018.03.31"]
[UTCTime "12:25:30"]
[WhiteElo "1571"]
[BlackElo "1684"]
[WhiteRatingDiff "+14"]
[BlackRatingDiff "-14"]
[Variant "Standard"]
[TimeControl "600+0"]
[ECO "B01"]
[Opening "Scandinavian Defense"]
[Termination "Normal"]
[Event "U1700 Rapid Arena"]
[Annotator "lichess.org"]
1. e4 { [%clk 0:10:00] } d5 { [%clk 0:10:00] } { B01 Scandinavian Defense } 2. e5 { [%clk 0:09:59] } Nc6 { [%clk 0:09:58] } 3. Nf3 { [%clk 0:09:57] } Bf5 { [%clk 0:09:57] } 4. Bb5 { [%clk 0:09:55] } e6 { [%clk 0:09:52] } 5. Nc3 { [%clk 0:09:53] } Bb4 { [%clk 0:09:47] } 6. a3 { [%clk 0:09:51] } Bxc3 { [%clk 0:09:44] } 7. bxc3 { [%clk 0:09:48] } Ne7 { [%clk 0:09:43] } 8. Bb2 { [%clk 0:09:46] } O-O { [%clk 0:09:40] } 9. O-O { [%clk 0:09:42] } a6 { [%clk 0:09:37] } 10. Ba4 { [%clk 0:09:40] } a5 { [%clk 0:09:32] } 11. Bb3 { [%clk 0:09:39] } Ng6 { [%clk 0:09:26] } 12. Re1 { [%clk 0:09:35] } Bg4 { [%clk 0:09:24] } 13. h3 { [%clk 0:09:31] } Bxf3 { [%clk 0:09:22] } 14. Qxf3 { [%clk 0:09:26] } Ncxe5 { [%clk 0:09:20] } 15. Qh5 { [%clk 0:09:16] } Nc4 { [%clk 0:09:08] } 16. Bc1 { [%clk 0:09:08] } Nf4 { [%clk 0:09:02] } 17. Qg4 { [%clk 0:08:57] } Qf6 { [%clk 0:08:53] } 18. d3 { [%clk 0:08:47] } Nxh3+ { [%clk 0:08:37] } 19. Qxh3 { [%clk 0:08:29] } Qxc3 { [%clk 0:08:32] } 20. Bf4 { [%clk 0:08:13] } Nd6 { [%clk 0:08:08] } 21. Qg3 { [%clk 0:08:11] } g6 { [%clk 0:08:04] } 22. Be5 { [%clk 0:08:02] } Qd2 { [%clk 0:07:40] } 23. Qh4 { [%clk 0:07:57] } h5 { [%clk 0:07:33] } 24. Bf4 { [%clk 0:07:48] } Qc3 { [%clk 0:07:30] } 25. Qg5 { [%clk 0:07:42] } Nf5 { [%clk 0:07:17] } 26. Be5 { [%clk 0:06:52] } Qc6 { [%clk 0:07:00] } 27. Qf6 { [%clk 0:06:39] } Kh7 { [%clk 0:06:45] } 28. Re3 { [%clk 0:05:38] } a4 { [%clk 0:06:42] } 29. Rf3 { [%clk 0:05:14] } Kh6 { [%clk 0:05:14] } 30. g4 { [%clk 0:01:54] } d4 { [%clk 0:04:55] } 31. Rxf5 { [%clk 0:00:59] } exf5 { [%clk 0:04:47] } 32. g5+ { [%clk 0:00:48] } Kh7 { [%clk 0:04:42] } 33. Qg7# { [%clk 0:00:47] } { White wins by checkmate. } 1-0
Lichess is one of my favorite, unfortunately PGN generator can't add annotation (except for the opening name and "White wins" P.)

There are some excellent free ones on SourceForge. Particularly;
https://sourceforge.net/projects/pgn-chessbook/
and
Wow, that's really cool.
Thanks.
http://www.wmlsoftware.com/chesspad.html
Best free PGN viewer software.