I keep meaning to do this myself. I was gathering information and happened to see a post at the Revit Forum asking the same question essentially so I posted my response there and here.
Ignoring the question of which language to focus on...well, if you've got no programming experience already supposedly C# (C sharp) is "easiest" to learn. Otherwise any language you are already familiar with, assuming you are familiar with .net too, will work (your mileage may vary).
I'd start by getting acquainted with Jeremy Tammik's blog and read his older post Getting Started with Revit API 2009. Then his more recent follow up post Getting Started with the Revit API 2010. A third post regarding Getting Started references Rod Howarth's contributions.
You'll want to watch the DevTV videos.
These are the Revit API blogs I'm familiar with:
The Building Coder (Jeremy Tammik)
Bolt out of the Red (Guy Robinson)
Revitnet (Don Rudder)
Daren@Work (Daren Thomas)
CAD App Development (Matt Mason)
Revit APP Blog (Bruce)
Revit Programing (Ed Pitt)
The list is in the order for my current ranking based on their posting frequency/quantity/quality etc. However, all of them put together might barely equal the output by Jeremy Tammik alone (he's prolific) but they each offer stuff you'll probably find interesting at some point.