على الرغم من التميز الذي أظهرته لغات الجيل الثاني على لغة الآلة، إلا إنها عانت بعض العقبات. فالبرنامج المكتوب بها تتم كتابته ليتناسب مع خصائص الآلة (الحاسوب) التي سيتم تطبيقه عليها. بمعنى أن البرنامج المكتوب بلغة التجميع معتمد على الآلة التي يتم تنفيذه عليها ولا يمكن استخدامه على آلة أخرى، إلا بعد إعادة كتابته ليتلاءم مع تكوين هذه الآلة الجديدة ( مثل أسماء المسجلات ومواقع الذاكرة..).
عقبة أخرى تتمثل في عملية تصميم البرنامج والذي يتطلب من المبرمج التفكير بدقائق البرنامج جميعها، من حيث تعريف اسم المسجل (register) وأسماء مواقع الذاكرة التي سيتم تطبيق أمر معين عليها، وهذا يعني أن على المبرمج أن يبني البرنامج خطوة خطوة من مستوى أدنى لمستوى أعلى.
تشبه المسألة عملية وضع مخطط لبناء منزل. فلغة التجميع تماثل وضع مخطط للبناء يبدأ من المسامير والألواح والطوب (من الأسفل) صعودا حتى تصميم الغرف (للأعلى)، في حين أنه يكون من الأسهل لو تم البدأ بتصميم المنزل أولاً على شكل غرف ونوافذ وأبواب (من مستوى أعلى)، ومن ثم يلي ذلك التفكير بالأشياء الأكثر تحديداً ( مستوى أدنى).
أي أن التصميم يكون أسهل لو تم التفكير به من مكونات كلّية (major features) ومن ثم يتم تقسيم الكليات لمكونات أكثر تفصيلا.
اعتماداً على هذه الفكرة تم التوجه نحو تطوير لغات برمجة تمكّن المبرمج من بناء برنامج معتمداً على النظرة الكلية (high-level) ومن ثم تحويلها لمكونات أدنى (low-level). ونتج عن ذلك جيل ثالث من لغات البرمجة عرفت باسم لغات البرمجة عالية المستوى (high-level languages) واستخدمت هذه اللغات على لغة الإنسان الطبيعية-اللغة الإنجليزية- و رموز رياضية ومنطقية معروفة، في حين اكتسبت لغة التجميع مسمى لغات البرمجة متدنية المستوى(low level languages).
وبذلك تخطت لغات الجيل الثالث كل عقبات الجيل الثاني، من حيث سهولة التصميم وعدم اعتماد أوامرها على آلة بحد ذاتها.
من أشهر لغات البرمجة عالية المستوى والتي ظهرت في مرحلة مبكرة:
لغة كوبول والتي كانت مخصصة للأغراض التجارية والأعمال (COBOL- COmmon Business Oriented Language).
لغة فورتران والتي كانت مخصصة للأغراض العلمية والتطبيقات الهندسية (FORTRAN- FORmula TRANslator).
وقد تم تزويد لغات البرمجة عالية المستوى ببرنامج مترجم (compiler) ليقوم بتحويل الأوامر البرمجية من المستوى الأعلى إلى المستوى الأدنى - لغة الآلة - ليتمكن الحاسوب من تنفيذه.