Just going mention that there exists malware which uses C#/VB.NET so it might be interesting to learn how to read those languages and also MSIL.
What it really comes down to is that it doesn't really matter which one of these you learn as a beginner, but know that GAS is not used on Windows, nor is the AT&T syntax. IMHO, NASM is the best way to go because it's popular on both Windows and Linux platforms and it's used with the Intel syntax which is what Windows uses as well. You can tell that reverse engineering isn't taken seriously on Linux because it defaults to the AT&T syntax lal. What you should do is pick one flavour of assembly and stick with it (I suggest NASM if that wasn't clear already) and learn the underlying computer architecture from books, i.e. how the CPU works, how the data buses send and receive data to and from RAM, data alignment in memory, etc.
Learning the basics of assembly on either platform is fine. There are slight differences between Linux and Windows, for example, the
fs register is reserved for pointing to the Thread Information Block (TIB).
There is a lot of information on the Windows platform and to be efficient in analysing malware, you need to be able to quickly identify and understand the API calls or whatever the piece of malware is doing to interact with the environment and what effects it has, e.g. registry writes, crypto functions, disk IO operations, process accesses, code injection, networking functions, WMI interactions, etc. In the event of more advanced malware such as packers/crypters, it's important to know the PE file format in-depth so that you can unpack it manually or with the help of tools.
There are specially created VMs created for RE such as
REmnux which has many tools available, most which provide brute forcing scripts to break encryptions such as XOR, and other tools which perform a strings analysis while deobfuscating them such as base64'd strings (floss is one). There are also disassemblers and debuggers such as radare2 and Hopper but they have an incredibly high skill floor.
IMHO, Windows is the platform which provides the most tools for the job. You'll also need a Windows machine to do dynamic analysis anyway, so you might as well get it. Just some of the tools that I use are: Resource Hacker, exepeinfo (or PEiD), pestudio, Process Hacker, Process Monitor, Process Explorer, IDA Pro, OllyDbg, Regshot, ImpRec, PEview, Wireshark, Dependency Walker.
Just a note on disassemblers and debuggers, I notice that on Linux that these tools are pretty restricted in terms of displaying multiple panels (correct me if I'm wrong, Linux peeps) of important information such as the disassembly, the stack frame, a hex dump window, memory view unlike on Windows, tools like IDA Pro and Ollydbg have many windows which can show all of this information at once so it's incredibly convenient.
So yeah, I've given you my view on this, the choice is yours.
Awwh @_py , you remembered! How sweet of you!