Unicode 是由於傳統的字符編碼方式的局限性而產生的,例如 ISO 8859 所定義的字符雖然在不同的國家中廣泛地使用,可是在不同國家間卻經常出現不相容的情況。很多傳統的編碼方式都具有壹個共通的問題,即其容許電腦進行雙語環境式的處理(通常使用拉丁字母以及其本地語言),但卻無法同時支援多語言環境式的處理(指可同時處理混合多種語言的情況)。
Unicode 試圖將字位(字素,graphemes)與類字位字符加以認定與編碼,而非以不同的字形(glyphs)來加以區分。然而在漢字的個案來看,這樣方式有時會引起壹字多形的認定爭議(詳見中日韓統壹表意文字主題)。
在文字處理方面,Unicode的功用是為每壹個字符提供壹個唯壹的代碼(即壹組數字),而不是壹種字形。換句話說,Unicode是將字符以壹種抽象的方式來呈現,而將視覺上的演繹工作(例如字體大小、外觀形狀、字體形態、文體等)留給其他軟件來處理,例如網頁瀏覽器或是文字處理器。
為了使Unicode與已存在和廣泛使用的舊有編碼互相兼容,尤其是差不多所有電腦系統都支援的基本拉丁字母部分,所以Unicode 的首256字符仍舊保留給ISO 8859-1 所定義的字符}},使既有的西歐語系文字的轉換不需特別考量;另方面因相同的原因,Unicode 把大量相同的字符重復編到不同的字符碼中去,使得舊有紛雜的編碼方式得以和 Unicode 編碼間互相直接轉換,而不會遺失任何資訊。舉例來說,全角格式區段包含了主要的拉丁字母的全角格式,在中文、日文、以及韓文字形當中,這些字符以全角的方式來呈現,而不以常見的半角形式顯示,這對豎排文字和等寬排列文字有重要作用。
在表達壹個 Unicode 的字符時,通常會用“U+”然後緊接著壹組十六進制的數字來表示這壹個字符。在基本多文種平面(Basic Multilingual Plane,簡稱 BMP)裏的所有字符,只要使用四位十六進制數(例如 U+4AE0,共支持六萬多個字符)來表示,但在 BMP 以外的字符則需要使用五位或六位十六進制數了。舊版的 Unicode 標準使用相近的標記方法,但卻有些微的差異,例如在 Unicode 3.0 裏使用“U-”然後緊接著八位數,而“U+”則必須隨後緊接著四位數,以表示僅限於代表壹個字符單位(code unit),而非字符(code point)。