OPC UA Framework Advanced

OPC UA Client and Server development made easy

Successful with only a few lines of code

Book - The whole Manual as eBook

OPC UA Framework Advanced Class Library

Here you find the documentation for the API of the OPC UA Framework:

Find the complete Class Library in Evaluation Paket as download on your distributors web site.

OPC UA .NET SDK for Clients – Evaluation Package1)
Download ZIP Archive of Opc.UaFx.Client (Version: – 2019-08-15)
Download NuGet Package of Opc.UaFx.Client (Version: – 2019-08-15)

OPC UA .NET SDK for Clients and Servers – Evaluation Package2)
Download ZIP Archive of Opc.UaFx.Advanced (Version: – 2019-08-15)
Download NuGet Package of Opc.UaFx.Advanced (Version: – 2019-08-15)

OPC Watch (Version: – 2019-08-13)
A free and simple but professional OPC UA Client to access OPC UA Servers.

Version History - The list of improvements in each version
OPC UA .NET SDK for Clients and Servers + Structured Datatypes PREV63)
Download ZIP Archive of Opc.UaFx.Advanced (Version: – 2019-06-25)
Download NuGet Package of Opc.UaFx.Advanced (Version: – 2019-06-25)
Note: In this release, reading and writing works only with the manual resolution of the Types.

OPC UA .NET SDK for Clients and Servers + Structured Datatypes PREV54)
Download ZIP Archive of Opc.UaFx.Advanced (Version: – 2019-05-24)
Download NuGet Package of Opc.UaFx.Advanced (Version: – 2019-05-24)
Note: In this release, reading and writing arrays works only if the data type is a class.

Find Downloads on your distributors website.

OPC UA Features

  • Data Access (DA)
  • Methods
  • Events
  • Alarm & Conditions
  • Historian Data (HDA)
  • FileType (files can be directly embedded and approached)
  • Extension of the OPC UA Stack from the OPC-Foundation to comfortable and mature functionality
  • no difficult “code joggling” as necessary in direct use of the Foundation Stack
  • intuitive and easy usability of the framework guarantee the best possible benefit
  • Client / Server application with only a few lines of code
  • support of the Microsoft OPC UA Stack in the nearby future
  • Configuration
    • directly in the code
    • XML-based
    • through external file
  • Access / Policies
    • integrateable user management
    • User Token Policy configuration via ACL (Access Control Lists)
    • allround authentification possibilities
    • User / Password
    • Certificates
    • White / Blacklisting of user rights
    • automatic generation of Client- / Server certificates
    • free choice of certificate storage (Cerificate Stores): file system, operating system or application
  • Nodes
    • “easy to use” Node management
    • user-dependent access to Nodes possible
    • Comfort Browsing
    • Callbacks / events triggered by Node access (read / write / subscribe)
  • unlimited number of connections


Operating system

  • Windows 32 / 64 Bit with .NET Framework (minimum 4.0)
  • also Linux / macOS with support of the Microsoft Stack


  • C#
  • VB.NET

Example C# Code OPC UA Client

namespace Client
    using System;
    using System.Threading;
    using Opc.UaFx.Client;
    public class Program
        public static void Main()
            using (var client = new OpcClient("opc.tcp://localhost:4840")) {
                while (true) {
                    var temperature = client.ReadNode("ns=2;s=Temperature");
                    Console.WriteLine("Current Temperature is {0} °C", temperature);

Excample C# Code OPC UA Server

namespace Server
    using System.Threading;
    using Opc.UaFx;
    using Opc.UaFx.Server;
    internal static class Program
        public static void Main()
            var temperatureNode = new OpcDataVariableNode<double>("Temperature", 100.0);
            using (var server = new OpcServer("opc.tcp://localhost:4840/", temperatureNode)) {
                while (true) {
                    if (temperatureNode.Value == 110)
                        temperatureNode.Value = 100;



OPC UA stands for OPC Unified Architecture, shortened OPC UA. Contrasting to the predecessor OPC, OPC UA especially differenciates itself through the ability to not only transport machine data (meassurements, parameters etc.), but also describe the data semantically in order for machines to read it. OPC UA means: Openess Productivity Connectivity Unified Architechture.


The “Node” is the most basic element of the OPC UA. Nearly every element is “reduced” to one “Node”, so to say. Hearby the Nodes stand within direct relation to each other.
The Wikipedia definition about the OPC Unified Architecture contains a fitting description for the term “Node”:
“The OPC information model is a so-called Full Mesh Network based on nodes. Nodes hold process data as well as all other types of metadata.” Source: wikipedia.org/wiki/OPC_Unified_Architecture

  • A Node resembles an object from object oriented programming.
  • A Node has attributes, which can be read (Data Access (DA), Historical Data Access (HDA)).
  • Nodes are used for process data as well as for all other types of metadata.
  • The therefore modelled OPC Address Space contains a type model with which all data types are specified.


The OPC specification defines that every Node can be uniquely identified in the Adress Space via an Identifier (=NodeId). The NodeId is defined either by a GUID (Global Unique Identifier), a numeric expression, an array of bytes or a string value. In general but not necessarily, the NodeId contains the “Namespace”.

Address Space

All Nodes supplied and processed in the OPC UA are administrated in a so-called Address Space. The Address Space depicts a kind of logical storage. In this “storage” the contained Nodes can logically refer to one or more Nodes in the same or another Address Space.


The “Address Space” mentioned / visualized earlier can be logically segmented into one or more Views. While there is one Default View, Custom Views can contain one or more Nodes.


The Node Manager supplies one or more Nodes and defines their relationships towards each other. Predefined System Node Managers are:

  • Core Node Manager (defines i.a. Type Nodes and System Nodes)
  • Diagnostics Node Manager (supplies Nodes for diagnostics)
  • Master Node Manager (the “administrator” of all Node Managers, it delegates calls to the concerning Node Managers)


OPC UA defines a series of different Services by means of which the Client interacts with the Server. Those Services are server-sided implemented as Methods and are used for:

  • reading and writing Note attributes / values
  • administrating Node References
  • browsing of Nodes
  • reading and writing historical values
  • calling Methods
  • administrating subscriptions
  • e.a.
1) , 2) Your “License Code” turns the package into a productive full version.
3) , 4) Not recommended for productive use.