I know in java we are using j2me for developing mobile software. What is the equivalent in .NET? What would be the best way to learn it? Can I also get book recommendations for a beginner?
The .Net Compact Framework, but note that it only runs on Windows devices (Windows Mobile, Windows CE, Windows Embedded).
The .NET Compact framework is what you're looking for. Wiki page / MS Page
There are a few of the main concepts of mobile development with .NET outlined on this page also.
This is of course assuming you're wishing to develop for Windows Mobile OS phones. There are other ways to develop for software such as the iPhone - you'd have to look into Mono and MonoTouch for that.
There's an excellent introduction video here if you're interested (Chris Hardy - C# on the iPhone with MonoTouch)
Be a bit careful here -- the answer to this question is probably about to change in a big way as Silverlight seems to be the new platform for third party mobile applications on Windows devices. Though it is very overdue and it's not completely clear what is happening, I doubt whether now is a good time to start learning the Compact Framework.