Successful with only a few lines of code

Book - The whole Manual as eBook

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

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

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

OPC UA .NET SDK for Unity Clients – Evaluation Package3)
Download ZIP Archive of Opc.UaFx.Client (Version: – 2019-05-10)
Download NuGet Package of Opc.UaFx.Client (Version: – 2019-05-10)

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

Version History - The list of improvements in each version

There are currently no preview versions available. In case you're interested in some feature the SDK may not fulfill in the latest version:

Do not hesitate and just contact us via support@traeger.de!

OPC UA .NET SDK for Clients and Servers PREV1 for …4)

  • Structured Datatypes (Server-side)
  • NodeSets (Companion Specifications like UMATI)

Download ZIP Archive of Opc.UaFx.Advanced (Version: – 25.11.2019)
Download NuGet Package of Opc.UaFx.Advanced (Version: – 25.11.2019)

Find Downloads on your distributors website.

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) , 3) Your “License Code” turns the package into a productive full version.
4) Not recommended for productive use.