As mentioned by Jeff, this was a bug in <=0.12 (but is fixed in 0.13).
In [11]: s = '''A;B
1;2,000
3;4'''
In [12]: pd.read_csv(StringIO(s), sep=';', thousands=',')
Out[12]:
A B
0 1 2000
1 3 4
[2 rows x 2 columns]
In [13]: pd.version.version
Out[13]: '0.13.0rc1-82-g66934c2'