Both UNIQUE and PRIMARY KEY constraints enforce uniqueness in the column. But there are two major differences:
Primary Key
------------
1. It does not allow NULL value to be inserted in the column.
2. Oracle creates a clustered index by default for the column.
Unique Key
-----------
1. It allows one NULL value to be inserted in the column.
2. Oracle creates a non-clustered index by default in the column.
Moreover a table can have more than one UNIQUE key but not more than one Primary key.