WebAPI to interact with bitcoin wallet I need to automatically send funds from my hotwallet to users on my website at various times when they do something on the site.  

Later I will also need to be able to see total balance for an address receive data about address totals and funds etc. (for this I have ABR block explorer and API setup to read the blockchain for addresses)

I know there are all the commands that can be executed from the terminal or CMD when running bitcoind, but how to trigger these from my website? Do I need to write a webAPI to handle such requests direct against the network? or is it more common to make a call to run these commands via scripts direct against the bitcoind?

Any help appreciated
You actually have several options, but they all relate to what your hot wallet actually is, and how you want to interact with it.

For example, you could have bitcoind running on a different server, and allow it to accept RPC commands from your web server.  These commands could either be issued by calling the command line on your server, or by adding RPC support directly into your web application.

You could also skip using an "out of the box" wallet like bitcoind, and instead add wallet features directly into your web application using a library like NBitcoin (since it sounds like you are using .NET).  In this scenario, your web application would actually be your hot wallet, and you would only build out the wallet capabilities that you plan on using.

In either of these cases, however, I would advise you to keep wallet functionality off your public facing web server, and make sure that the server handling the actual signing of transactions and storage of private keys is only accessible from your web server (with proper authentication), and not the internet at large.  When bitcoin is involved, it's best to limit your attack surface.