Node.js itself is Google's V8 JavaScript engine (the one in Google Chrome) coupled with a heap of asynchronous non-blocking APIs for IO (http, file system, etc). In that sense, you'd usually use it as a web server (using the builtin http module), although you can pretty much use Node.js just as you'd use any scripting language.
npm[0], Node.js's package manager, is also pretty useful. There's a package to do most things.
Yes, there's some projects that let you create desktop applications using Node.js - what they're doing is using an embedded version of Chrome and pairing it with Node.js. You can then use HTML and CSS to create a user-interface that you can then manipulate with JavaScript. You end up with a fairly bloated distributable application, but the JavaScript code runs on Mac, Windows and Linux.
NodeSchool[1] seems to be the recommended learning resource for Node.js. I've never really used it, but it looks pretty good.