<disclaimer - I work for a Phoenix Contact distributor>
I find the ILC 150 a pretty good bang for the buck. It is harder to start up and get everything connected than say a micrologix if you are not used to it but once you have it up and going, it's pretty stalble.
There are 2 different versions of the software you can use but once you start with one, it's hard to switch to the other. One is the completely free PCWorx Express. The other is the full PCWorx running in Demo mode. I haven't figured if there is a difference between using the two or not. I have mostly used PCWorx Express.
When it comes to using specialized modules (analog, SSI input, counters, etc.) you can do it the hard or easy way. The easy way is to find the premade function blocks Phoenix has made to support the hardware. You can download them from their web site. You just have to use the version that goes with the ver of PCWorx you are using.
Currently, Modbus is done through a set of function blocks bit I'm told the next version of the controller will have Modbus as a native comm option. There is a lower cost version in the family, the ILC130, as well as 2 higher options the ILC155 and ILC170. The 170 includes an SD card slot.