Imagine that you need to develop and schedule an application/script to do the following:-

Reference one or more .net assemblies
Query the API, get some objects
for each object call another method in the API

What would you use?
In the past I have created small console applications that do the above, but it seems a bit clumsy and overkill.
I imagine something like PowerShell or IronPython might be a better fit.
Any recommendations?
The problem with application drivers is that they constantly break.  Applications are constantly changing their external surface and this wreaks havoc on drivers.  Therefore you constantly need to updated parts of the drivers.  I find a non-compiled dynamic language is ideal for this as you can quickly make an update and kick off a task.  
Powershell is a great technology for this.  It is an amazingly flexible and really easy to pick up.  It is a mix of compiled and dynamic code.  So the more algorithm heavy portions of your driver can be any compiled language and the more fragile and frequently updated pieces can be script.  They integrate seamlessly.  
I'm an avid Powershell user and really don't have much experience with IronPython (hence my choice).  IronPython could also have these features though so if you're more comfortable with that language it's where you should go.
What is the best technology to use for automating a task using .net libraries?