what is the difference between 3 tier architecture and a mvc ?
Are they same?
Both have 3 layers i.e model, views and controller
MVC is a pattern used to make UI code easier to maintain and test. When the MVC pattern is used a larger portion of the UI code can be unit tested.
Here is a good article which describes the MVC pattern in more detail: http://martinfowler.com/eaaDev/uiArchs.html
3 tier architecture is a pattern used for a completely different reason. It separates the entire application into meaningful "groups": UI, Business Logic, Data Storage.
So 3 tier application refers to all code in the application. The MVC pattern is a pattern used in the UI tier.
Here is a good article on the 3 tier architecture: http://dotnetslackers.com/articles/net/IntroductionTo3TierArchitecture.aspx
For further information you can search the internet and find a gazzilion articles on both subjects.