Login defines you access to the SQL Server. Having a login let's you communicate with the database. The login has definition for the authentication (username and password or windows authentication) and for a login you can define server wide privileges.
User instead defines access to a single database within the same SQL Server where you have a login. User definition contains privilege definitions inside that database. For example if your SQL Server instance has 5 databases your login may have access only to 2 of those so it's a user in two databases.
Have a look at the statements for creating both. It'll explain a lot:
-
CREATE LOGIN[
^]
-
CREATE USER[
^]