Live Writer allows you to connect to Wordpress, Blogger, and other online blogging platforms. You can import posts from your blogs. You can compose in Live Writer (similar to you compose in Word). You can send your composition to your Wordpress blog as a draft, or even publish from Live Writer.
How does it communicate with Wordpress (in terms of, if I was to code something similar, what would be the points of action)?
Also notably, Live Writer is able to retrieve the categories list from WordPress! How does it take this from WordPress and embed it on Live Writer?
As Rup has commented, it likely uses wordpress's XML RPC to communicate with the wordpress server. This is turned on by default since WordPress 3.5.
There is an extensive list of clients that use this procedure to post to your blog on pretty much any platform you care to imagine.
If you would like to try your hand at programming using this method, the wordpress XML-RPC API is the place to start.
There is quite an in depth guide to programming this, which would make good reading. The tutorial uses the PHP programming language, which you'd also have to set up on your machine, using XAMPP for instance. You can use other programming languages using additional interfaces, including Ruby and C#.net.
I've heard that setting featured images can be a bit of a pain, but haven't tried to. It looks as though it should be doable from these two questions though.