There are two techniques that you can use.
Putting this in a normal module
Will put C5's contents into the textbox before the userform is shown. Replacing CStr(Range("c5").Value) with a variable gives you control over which value goes into the text box.
UserForm1.TextBox1.Text = CStr(Range("c5").Value)
If you know that C5's value will always be the intial value of the text box, this code can be put in the UserForm's code module. The range is fully qualified to insure that which sheet is active doesn't affect the right value being put in the text box. This consideration also applies to the other technique, but since the range reference is outside of the userform, its less of a suprise.
In both cases
Private Sub UserForm_Initialize()
Me.TextBox1.Text = CStr(ThisWorkbook.Sheets("Sheet1").Range("C5").Value)
will erase the contents of the text box. The textboxe's value must be put in a cell or variable before that line is executed