According to the C# spec, a method header consists of:
attributesopt method-modifiersopt return-type member-name (formal-parameter-listopt)
So to extend what you've shown:
public void SumNumbers(int firstNumber, int secondNumber)
Above example contains examples of the possible parts that make up a method header, while the minimum (all non-optional parts) would be something like:
As for the signature, see 3.6 Signatures and overloading:
The signature of a method consists of the name of the method and the type and kind (value, reference, or output) of each of its formal parameters, considered in the order left to right. The signature of a method specifically does not include the return type, nor does it include the params modifier that may be specified for the right-most parameter.
The following example shows a set of overloaded method declarations along with their signatures.
void F(); // F()
void F(int x); // F(int)
void F(ref int x); // F(ref int)
void F(int x, int y); // F(int, int)
int F(string s); // F(string)
int F(int x); // F(int) error, F(int) already exists
void F(string a); // F(string)
void F(params string a); // F(string) error, F(string) already exists
So the signature of your second example would be:
See also Method Signature in C# on SO, especially Eric Lippert's answer.