As I am a beginner to ASP.NET MVC, I would like to know what are the best data access methods for ASP.NET MVC?
Have a look at the NerdDinner tutorial. It will pretty much tell you everything you need to know.
The part of the tutorial that talks about data access methods is here: http://nerddinnerbook.s3.amazonaws.com/Part3.htm
As ASP.NET MVC is all about TDD and separation of concerns it is more natural to use any type of ORM for data access (NHibernate, Entity Framework, LINQ to SQL etc.). What type of ORM - depends on your project goals and experience.
This is somehow subjective. There's no such thing as best data access method for ASP.NET MVC. This will depend on your application requirements and specific needs. There are many different ORM frameworks you can choose from such as NHibernate, Entity Framework, Linq to SQL, ... (If there was a best framework this list wouldn't be so big).
If you're just learning MVC, and are ok with SQL server, then I would recommend using Linq to SQL for a start. Later you can then introduce more powerful ORM like NHibernate or EF. If you try to tackle MVC and something like NHibernate at once you will likely bite off more than you can chew.
This is a really good article on which practice of data access to choose: