There are many font services, free (like the above) or paid, depending in part on the font you want. Many fonts are not allowed to be placed on the web for commercial reasons, so the workaround is to use a service like TypeKit, where the font is hosted by them and linked to your site in some way (so the font loads on your site but is hosted on theirs).
If you can find one that's free, though, Fontsquirrel is a better option. They have a lot of free fonts all set up and packaged for use on the web, which is really great. You just download their package, upload it to your site (say, in the CSS folder) and add the styles they give you to your style sheet to make the fonts available on your site.
Is the safest option to download the font and upload to my site? If so how would I do this please. Is there set CSS code to do this?
I find that works really well, so it's quite safe indeed. You can only do this when the fonts are freely available. As I said, if they aren't, you can use services like TypeKit or FontDeck, which are good also, and easier to use, as you just add a link to the head of your doc. (They do cost, though.)
As I also menitoned, if you download a ready made package from FontSquirrel, you just load the font files on your site (say, in the CSS folder) and paste the CSS they give you (as part of the download) into your style sheet.