I am programming a game using C#, thus, I am very concerned about performance.
I would like to know what are the main differences, and if possible, performance considera
I know that a class is always passed by reference and that a struct is passed by value, but I talking about passing the struct by reference here.
You probably have the right idea, but this is incorrect. Everything in C# is passed by value unless you use the ref
keyword.
Class instances are reference types, struct instances are value types.
When you pass a reference type by value, you pass a copy of the reference (small). When you pass a value type by value, you pass a copy of the whole data (potentially large).
Jon Skeet has a good explanation of all this here.