Create a class to stop Bob fiddling with your variables _number1 and _number2. // Problem we want to solve is "How do we sum two numbers?" class Adder { // Attributes // Begin by defining the values we need to solve this problem // Two numbers private int _number1; // Underscore in front of attribute names is "Mikes Convention" private int _number2; // Constructors public Adder(int num1, int num2) { // Provide initial values for solving the problem _number1 = num1; _number2 = num2; } // Method -- a function within a class // Solve the problem public int AddThem() { return _number1 + _number2; } } Bob uses class like this: class Program { static void Main(string[] args) { Adder sum1; Adder sum2; int result; sum1 = new Adder(1, 2); // Add 2 and 3 sum2 = new Adder(32, 44); // Add 32 and 44 result = sum1.AddThem(); Console.WriteLine("Sum1 is {0}", result); result = sum2.AddThem(); Console.WriteLine("Sum2 is {0}", result); Console.ReadLine(); } }