<ul>
<li>What is the main difference between <code>int.Parse()</code> and <code>Convert.ToInt32()</code>?</li>
<li>Which one is to be preferred</li>
</ul>

No difference as such.
```
Convert.ToInt32()
```
calls
```
int.Parse()
```
internally
Except for one thing
```
Convert.ToInt32()
```
returns
```
0
```
when argument is
```
null
```
Otherwise both work the same way