Currently the blockchain is at 36 GB, but with txindex turn on, how big is it? And how much disk space should I get to run a Bitcoin Core node with txindex on for say a year?
Currently 48GB. Its hard to say how much the chain will grow in the future, but the 1MB block size limit caps the growth of the chain itself to 50GB per year. Building services that rely on a fully indexed block chain is probably quite inadvisable, you should aim to construct systems that don't require it.